`
`US 7,124,205 B2
`Page 2
`
`u.s. PATENT DOCUMENTS
`5,517,668 A
`511996 Szwerinski et al. ......... 395/800
`611996 Chesson et al.
`............ 395/775
`5,524,250 A
`5,535,375 A *
`711996 Eshel et al. ................... 703/27
`5,548,730 A
`811996 Young et al.
`............... 395/280
`1011996 Bakke et al.
`................. 370/60
`5,566,170 A
`5,588,121 A
`1211996 Reddin et al.
`......... 395/200.15
`1211996 Seno et al.
`................. 395/675
`5,590,328 A
`111997 Isfeld et al.
`........... 395/200.02
`5,592,622 A
`111997 Stone ......................... 370/469
`5,598,410 A
`411997 Bach et aI ............. 395/200.01
`5,619,650 A
`511997 Delp et al. .................. 370/411
`5,629,933 A
`511997 Andrews et al. ....... 395/200.07
`5,634,099 A
`511997 Cloud et aI ................. 395/680
`5,634,127 A
`5,642,482 A
`611997 Pardillos .................. 395/200.2
`911997 Krech, Jr. et al.
`...... 395/200.64
`5,664,114 A
`5,671,355 A
`911997 Collins .................... 395/200.2
`5,678,060 A
`1011997 Yokoyama et al.
`......... 7091212
`5,682,534 A *
`1011997 Kapoor et al. .............. 7091203
`5,692,130 A
`1111997 Shobu et al.
`.......... 395/200.12
`5,699,317 A
`1211997 Sartore et al.
`......... 395/230.06
`1211997 Nakagawa .................. 395/484
`5,701,434 A
`5,701,516 A
`1211997 Cheng et al.
`............... 395/842
`5,727,142 A
`311998 Chen .......................... 395/181
`511998 Hagersten ................... 7111141
`5,749,095 A
`511998 Chan et al. ................. 370/455
`5,751,715 A
`5,752,078 A
`511998 Delp et al. .................. 395/827
`511998 Silverstein et aI.
`. ... 395/200.58
`5,758,084 A
`511998 Gentry et aI ........... 395/200.64
`5,758,089 A
`5,758,186 A
`511998 Hamilton et al. ........... 395/831
`511998 Kuzma ....................... 395/886
`5,758,194 A
`611998 Picazo, Jr. et al. ...... 3951188.01
`5,771,349 A
`5,778,013 A
`711998 Jedwab ....................... 714/807
`5,790,804 A
`811998 Osborne ................ 395/200.75
`5,794,061 A
`811998 Hansen et al. ......... 395/800.01
`5,802,258 A
`911998 Chen ..................... 3951182.08
`911998 McAlpice ................... 7111149
`5,802,580 A
`911998 Nogales et al. ............. 395/825
`5,809,328 A
`5,812,775 A
`911998 Van Seters et al. ..... 395/200.43
`911998 Purcell et al.
`.............. 395/163
`5,815,646 A
`5,872,919 A *
`211999 Wakeland ................... 7091230
`311999 Bilanskyet aI ............. 7091227
`5,878,225 A *
`5,898,713 A
`411999 Melzer et al.
`................ 371153
`611999 Wang et al.
`........... 395/200.33
`5,913,028 A
`5,930,830 A
`711999 Mendelson et al. ......... 7111171
`811999 Row et al. .................. 709/300
`5,931,918 A
`5,935,205 A
`811999 Murayarna et al.
`......... 7091216
`5,937,169 A
`811999 Connery et al.
`......... 395/200.8
`811999 Ram et al. .................. 710/128
`5,941,969 A
`5,941,972 A
`811999 Hoese et al. ................ 710/129
`5,950,203 A
`911999 Stakuis et al. ................ 707/10
`5,970,804 A
`1011999 Osborne ................ 395/200.75
`1111999 Radogna et al. ............ 370/392
`5,991,299 A
`5,996,024 A
`1111999 Blumenau ................... 709/301
`6,005,849 A
`1211999 Roach et al.
`............... 370/276
`1211999 Panner et aI ................... 710/5
`6,009,478 A
`112000 Lowe ......................... 7091250
`6,016,513 A
`212000 Gentry, Jr.
`. ................. 709/303
`6,021,446 A
`6,021,507 A
`212000 Chen. ... ... ..... ... ... ... ..... ... 714/2
`212000 Pitts ............................ 710/56
`6,026,452 A
`312000 Minami et aI .............. 370/401
`6,034,963 A
`3/2000 Olnowich ................... 7111130
`6,044,438 A
`6,047,323 A
`4/2000 Krause ....................... 7091227
`4/2000 Anderson et aI ............ 7111129
`6,047,356 A
`6,049,528 A *
`4/2000 Hendel et al.
`.............. 3701235
`6,057,863 A
`5/2000 Olarig ........................ 345/520
`5/2000 Hitzelberger ............... 370/537
`6,061,368 A
`5/2000 Dayet aI .................... 7111114
`6,065,096 A
`5/2000 Khaki et aI ................. 7091224
`6,067,569 A
`6,070,200 A
`5/2000 Gates et al.
`.................. 710120
`8/2000 Goshey et al. .............. 709/321
`6,101,555 A
`10/2000 Anand et al. ................. 710/15
`6,141,705 A
`
`6,145,017 A
`6,157,955 A
`6,172,980 Bl
`6,173,333 Bl
`6,202,105 Bl
`6,226,680 Bl
`6,246,683 Bl
`6,247,060 Bl
`6,279,051 Bl
`6,298,403 Bl
`6,345,301 Bl
`6,356,951 Bl
`6,389,468 Bl
`6,427,169 Bl
`6,434,651 Bl
`6,449,656 Bl
`6,453,360 Bl
`6,490,631 Bl *
`6,591,310 Bl *
`200110025315 A
`200110004354 Al
`200110013059 Al
`200110014892 Al
`200110014954 Al
`200110048681 Al
`200110053148 Al
`
`........................ 710/5
`1112000 Ghaffari
`12/2000 Narad et al. ................ 7091228
`112001 Flanders et aI ............. 370/401
`112001 Jolitz et al.
`.................. 71 0120
`3/2001 Gates et al.
`5/2001 Boucher et al.
`............ 7091230
`6/2001 Connery et aI ............. 370/392
`6/2001 Boucher et al.
`............ 7091238
`8/2001 Gates et al.
`.................. 71 0120
`10/2001 Suri et aI .................... 710/100
`212002 Burns et aI ................. 7091230
`3/2002 Gentry, Jr.
`.................. 7091250
`5/2002 Muller et aI ................ 7091226
`7/2002 Elzur ......................... 7091224
`8/2002 Gentry, Jr.
`.................. 710/260
`912002 Elzur et al. ................. 7091236
`912002 Muller et aI ................ 7091250
`1212002 Teich et aI .................. 7091250
`7/2003 Johnson ... ... ... ..... ... ... ..... 710/3
`112001 Jolitz
`6/2001 Jolitz
`8/2001 Dawson et al. ............. 7091217
`8/2001 Gaither et al. .............. 707/200
`8/2001 Purcell et al.
`................. 714/4
`1212001 Bilic et al. .................. 370/389
`12/2001 Bilic et al. .................. 370/389
`
`FOREIGN PATENT DOCUMENTS
`
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`
`PCTIUSOO/13091
`PCTlUS98/50852
`PCTlUS99104343
`WO 99/65219
`WO 00/13091
`WO 01104770 A2
`WO 01105107 Al
`WO 01105116 A2
`WO 01105123 Al
`WO 01140960
`WO 01140960 Al
`WO 01159966
`WO 01186430
`
`1111998
`1111998
`111999
`6/1999
`3/2000
`7/2000
`7/2000
`7/2000
`7/2000
`6/2001
`6/2001
`8/2001
`1112001
`
`OTHER PUBLICATIONS
`
`Jones et aI., "Methodology for Serializing Asynchronous Network
`Requests Over Multiple Paths," IBM Technical Disclosure Bulletin,
`vol. 36, No.1, Jan. 1993, pp. 151-156.*
`Internet pages entitled: DART Fast Application-Level Networking
`Via Data-Copy Avoidance, by Robert J. Walsh, printed Jun. 3, 1999.
`Internet pages ofInterProphet entitled: Frequently Asked Questions,
`by Lynne Jolitz, printed Jun. 14, 1999.
`Internet pages entitled: Technical White Paper-Xpoint's Disk-to(cid:173)
`LAN Acceleration Solution for Windows NT Server, printed Jun. 5,
`1997.
`Jato Technologies Internet pages entitled: Network Accelerator
`Chip Architecture, twelve-slide presentation, printed Aug. 19, 1998.
`EETIMES article entitled: Enterprise System Uses Flexible Spec,
`by Christopher Harrer and Pauline Shulman, dated Aug. 10, 1998,
`Issue 1020, printed Nov. 25, 1998.
`Internet pages entitled: iReady About Us and iReady Products,
`printed Nov. 25, 1998.
`Internet pages entitled: Smart Ethernet Network Interface Card,
`which Berend Ozceri is developing, printed Nov. 25, 1998.
`Internet pages entitled: Hardware Assisted Protocol Processing,
`which Eugene Feinberg is working on, printed Nov. 25, 1998.
`Internet pages of XaQti Corporation entitled: Giga POWER Pro(cid:173)
`tocol Processor Product Preview, printed Nov. 25, 1998.
`Internet pages ofXpoint Technologies www.xpoint.com web site (5
`pages), printed Dec. 19, 1997.
`Internet pages relating to iReady Corporation and the iReady
`Internet Tuner Module, printed Nov. 2, 1998.
`Internet pages entitled: Asante and 100BASE-T Fast Ethernet,
`printed May 27, 1997.
`
`Ex.1001.002
`
`DELL
`
`
`
`US 7,124,205 B2
`Page 3
`
`the Paragon XP/S-A7
`to
`Internet pages entitled: A Guide
`Supercomputer at Indiana University, printed Dec. 21, 1998.
`U.S. Appl. No. 601053,240, by Jolitz et al. (listed filed Jul. 18,
`1997).
`Zilog Product Brief entitled "Z85C30 CMOS SCC Serial Commu(cid:173)
`nication Controller", Zilog Inc., 3 pages (1997).
`Andrew S. Tanenbaum, Computer Networks, Third Edition, ISBN
`0-13-349945-6 (1996).
`Richard Stevens, "TCP/IP Illustrated, vol. 1, The Protocols", pp.
`325-326 (1994).
`VT8501 Apollo MVP4 Documentation, VIA Technologies, Inc., pp.
`i-iv, 1-11, cover and copyright page, revision 1.3 (Feb. 1, 2000).
`Internet pages entitled: Northridge/Southbridge vs. Intel Hub Archi(cid:173)
`tecture, 4 pages, printed Feb. 19, 2001.
`Gigabit Ethernet Technical Brief, Achieving End-to-End Perfor(cid:173)
`mance. Alteon Networks, Inc., First Edition, Sep. 1996.
`Internet pages directed to; Technical Brief on Alteon Ethernet
`Gigabit NIC technology, www.alteon.com.14pages.printed Mar.
`15, 1997.
`Internet web pages from "Adaptec.com" website directed to the
`Adaptec, AEA-7110C iSCSI Host Bus Adapter and about Adaptec's
`IP storage activities, 11 pages, downloaded and printed Oct. 1, 2001.
`Internet web pages from "iSCSlhba.com" website directed to JNI
`iSCSI HBAs including the "FCE-32 10/6410", 10 pages, down(cid:173)
`loaded and printed Oct. 1, 2001.
`Internet web pages from the "iSCSI Storage.com" website that
`mention an Emulex HBA, 2 pages, downloaded and printed Oct. 1,
`2001.
`Internet web pages from the "iSCSlhba.com" website that mention
`QLogic HBAs including the "SANblade 2300 Series", 8 pages,
`downloaded and printed Oct. 1, 2001.
`Internet pages from IReady News Archives entitled "iReady Round(cid:173)
`ing Out management team with two key executives," 2 pages,
`(printed Nov. 28, 1998).
`Toshiba, "Toshiba Delivers First Chips to Make Consumer Devices
`Internet -Ready Based on iReady's Design", 3 pages, Press release
`Oct. 14, 1998, downloaded Nov. 28, 1998.
`Internet pages entitled "iReady Products" from website http://www.
`ireadyco.comlproducts.htrnl, 2 pages, printed Nov. 25, 1998.
`Iready News Archives. Toshiba, iReady shipping Internet Chip, 1
`page, printed Nov. 28, 1998.
`Internet site www.interprophet.com.17pages.printed Mar. 1,2000.
`The 1-1000 Internet Tuner Features, iReady Corporation, 2 pages,
`date unknown.
`Internet pages from website http://www.ireadyco.comlabout.html. 3
`pages, downloaded Nov. 2, 1998.
`IReady News Archives, "Revolutionary Approach to Consumer
`Electronics Internet Connectivity Funded", San Jose, CA. 2 pages,
`Nov. 20, 1997, downloaded and printed Nov. 2, 1998.
`IReady News Archives, "Seiko Instruments Inc. (SII) Introduces
`World's First Internet-Ready Intelligent LCD Modules Based on
`IReady Technology", 2 pages Oct. 26, 1998, downloaded and
`printed Nov. 2, 1998.
`NEWSwatch-IReady Internet Tuner to Web Enable Devices, Nov.
`5, 1996. 2 pages, printed Nov. 2, 1998.
`David Lammers, EETimes, Jun. 13, 1997, "Tuner for Toshiba,
`Toshiba taps iReady for Internet tuner," 2 pages, printed Nov. 2,
`1998.
`Internet pages entitled: Comparison of Novell Netware and TCP/IP
`Protocol Architectures, by Janique S. Carbone, 19 pages, Jul. 16,
`1995, downloaded and printed Apr. 10, 1998.
`U.S. Appl. No. 08/964,304, Napolitano et al.
`"Two-Way TCP Traffic over Rate Controlled Channels: Effects and
`Analysis," by Lampros Kalampoukas, Anujan Varma and K.K.
`Rarnakrishnan, IEEE Transactions on Networking, vol. 6, No.6, 17
`pages, Dec. 1998.
`"Toshiba Delivers First Chips to Make Consumer Devices Internet(cid:173)
`Ready Based on iReady Design," IReady News Archives, 3 pages,
`downloaded Nov. 2, 1998.
`"File System Design for an NFS File Server Appliance," by Dave
`Hitz, James Lau and Michael Malcolm, 12 pages, Copyright 1996.
`Adaptec press release, "Adaptec Announces EtherStorage Technol(cid:173)
`ogy", 2 pages, Jun. 14, 2000.
`
`Adaptec article entitled, "EtherStorage Frequently Asked Ques(cid:173)
`tions," 5 pages, Jul. 19, 2000.
`Adaptec article entitled, "EtherStorage White Paper," 7 pages, Jul.
`19, 2000.
`Article entitled, "Computers; Storage," by James Berlino and
`Ananda Baruah, CIBC World Markets Equity Research, 9 pages,
`Aug. 7, 2000.
`Merrill Lynch article entitled, "Storage Futures," by Steven
`Milunovich, 22 pages, May 10, 2000.
`Market Watch-News Articles, "Montreal start-up battles data
`storage bottleneck," by Susan Taylor, 2 pages, Mar. 5, 2000.
`Internet-Draft "SCSI/TCP (SCSI over TCP)," by J.Satran et al., 38
`pages, Feb. 2000.
`Form IO-K for Exelan, Inc., for the fiscal year ending Dec. 31, 1987
`(10 pages).
`Form IO-K for Exelan, Inc., for the fiscal year ending Dec. 31, 1988
`(10 pages).
`Article from Rice University entitled "LRP: A New Network
`Subsystem Architecture for Server Systems", by Peter Druschel and
`Gaurav Banga, Rice University, Oct. 1996, 15 pages.
`Internet RFC/STD/FYI/BCP Archives article with heading
`"RFC2140" entitled "TCP Control Block Interdependence", web
`address http://www.faqs.org/rfcs/rfc2140.htrnl.9pages.printed
`Sep. 20, 2002.
`Schwaderer et aI., IEEE Computer Society Press publication
`entitled, "XTP in VLSI Protocol Decomposition for ASIC Imple(cid:173)
`mentation", from 15th Conference on Local Computer Networks,S
`pages, Sep. 30-0ct. 3, 1990.
`Beach, Bob, IEEE Computer Society Press publication entitled,
`"UltraNet: An Architecture for Gigabit Networking", from 15th
`Conference on Local Computer Networks, 18 pages, Sep. 30-0ct. 3,
`1990.
`Chesson et aI., IEEE Syposium Record entitled, "The Protocol
`Engine Chipset", from Hot Chips III, 16 pages, Aug. 26-27, 1991.
`Maclean et aI., IEEE Global Telecommunications Conference,
`Globecom '91, presentation entitled, "An Outboard Processor for
`High Performance Implementation of Transport Layer Protocols", 7
`pages, Dec. 2-5, 1991.
`Ross et aI., IEEE article entitled "FXI000: A high performance
`single chip Gigabit Ethernet NIC", from Compcon '97 Proceedings,
`7 pages, Feb. 23-26, 1997.
`Strayer et aI., "Ch. 9: The Protocol Engine" from XTP: The Transfer
`Protocol, 12 pages, Jul. 1992.
`Publication entitled "Protocol Engine Handbook", 44 pages, Oct.
`1990.
`Koufopavlou et al., IEEE Global Telecommunications Conference,
`Globecom '92, presentation entitled, "Parallel TCP for High Per(cid:173)
`formance Communication Subsystems", 7 pages, Dec. 6-9, 1992.
`Lilienkamp et aI., Publication entitled "Proposed Host-Front End
`Protocol", 56 pages, Dec. 1984.
`Internet pages of Xpoint Technologies, Inc. entitled "Smart LAN
`Work requests", 5 pages, printed Dec. 19, 1997.
`Richard Stevens, "TCP/IP Illustrated, vol. 1, The Protocols", pages
`325-326 (1994).
`Internet pages entitled: Northridge/Southbridge vs. Intel Hub Archi(cid:173)
`tecture, 4 pages, printed Feb. 19, 2001.
`Gigabit Ethernet Technical Brief, Achieving End-to-End Perfor(cid:173)
`mance. Alteon Networks, Inc., First Edition, Sep. 1996, 15 pages.
`Internet pages directed to Technical Brief on Alteon Ethernet
`Gigabit NIC technology, www.alteon.com.14pages.printed Mar.
`15, 1997.
`VIA Technologies, Inc. article entitled "VT8501 Apollo MVP4",
`pp. i-iv, 1-11, cover and copyright page, revision 1.3, Feb. 1,2000.
`"Two-Way TCP Traffic Over Rate Controlled Channels: Effects and
`Analysis", by Kalampoukas et aI., IEEE Transactions on Network(cid:173)
`ing, vol. 6, No.6, Dec. 1998, 17 pages.
`IReady News article entitled "Toshiba Delivers First Chips to Make
`Consumer Devices Internet-Ready Based on iReady Design", Santa
`Clara, CA, and Tokyo, Japan, Oct. 14, 1998, printed Nov. 2, 1998,
`3 pages.
`"File System Design For An NFS File Server Appliance", Article by
`D. Hitz, et aI., 13 pages.
`
`Ex.1001.003
`
`DELL
`
`
`
`US 7,124,205 B2
`Page 4
`
`Adaptec Press Release article entitled "Adaptec Announces
`EtherStorage Technology", 2 pages, May 4, 2000, printed Jun. 14,
`2000.
`Adaptec article entitled "EtherStorage Frequently Asked Ques(cid:173)
`tions", 5 pages, printed Jui. 19, 2000.
`Adaptec article entitled "EtherStorage White Paper", 7 pages,
`printed Jui. 19, 2000.
`CIBC World Markets article entitled "Computers; Storage", by J.
`Berlino et ai., 9 pages, dated Aug. 7, 2000.
`Merrill Lynch article entitled "Storage Futures", by S. Milunovich,
`22 pages, dated May 10, 2000.
`CBS Market Watch article entitled "Montreal Start-Up Battles Data
`Storage Bottleneck", by S. Taylor, dated Mar. 5, 2000, 2 pages,
`printed Mar. 7, 2000.
`Internet-draft article entitled "SCSI/TCP (SCSI over TCP)", by J.
`Satran et ai., 38 pages, dated Feb. 2000, printed May 19, 2000.
`
`WindRiver article entitled "Tornado: For Intelligent Network Accel(cid:173)
`eration", copyright Wind River Systems, 2001, 2 pages.
`WindRiver White Paper entitled "Complete TCP/IP Offload for
`High-Speed Ethernet Networks", Copyright Wind River Systems,
`2002, 7 pages.
`Intel article entitled "Solving Server Bottlenecks with Intel Server
`Adapters", Copyright Intel Corporation, 1999, 8 pages.
`Thla, Y.H. Publication entitled "High-Speed OSI Protocol Bypass
`Algorithm with Window Flow Control", Protocols for High Speed
`Networks, pp. 53-68, 1993.
`Thla, Y.H. Publication entitled "A Reduced Operational Protocol
`Engine (ROPE) for a multiple-layer bypass architecture", Protocols
`for High Speed Networks, pp. 224-239, 1995.
`* cited by examiner
`
`Ex.1001.004
`
`DELL
`
`
`
`u.s. Patent
`
`Oct. 17, 2006
`
`Sheet 1 of 25
`
`US 7,124,205 B2
`
`HOST MEMORY 33
`
`r - - - - - -
`
`~----------------------------------------------------- ---------------------------
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`PROTOCOL
`STACK 38
`
`: FILE SYSTEM:
`23
`I
`-
`
`I
`
`r - - - - - -
`I
`I
`I MEMORY 1
`I
`I
`I MGR27
`I
`___ -==--1
`I
`I
`I
`I I-CACHE 1
`I
`I
`INIC
`I/O
`I DRIVER 67
`I MGR26
`I
`I
`I
`I DRIVER 39
`___ _ -:::=---.J ___ ~.-..J ----~--I
`I - HOST FILE l
`I
`I CACHE 24
`-
`_-==- --I
`-
`-
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`HOST
`STORAGE
`UNIT 66
`
`2
`~6
`
`I
`CPU 30
`
`HOST 20
`
`I
`I
`I
`I
`I
`I
`I
`
`BRIDGE
`42
`L ___________________________________________________ ----------------------------
`40,------
`
`3\
`
`HOST 1/0
`CTRL64
`
`--------------~------------------------------------- ------------------------------------------------
`
`PROCESSOR
`44
`
`BRIDGE
`50
`
`DMA
`68
`
`INIC I/O
`CTRL 72
`
`4)8
`
`SEQUENCERS 52 -
`
`INIC 22
`
`-
`
`- -.
`1 -
`60'/ .... 1
`1
`1
`L_ 1-- --
`1--
`
`L_
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`INIC MEMORY 46
`. - - - - - - - -
`IFRAME BUFFERS 771
`
`_______ --l
`
`f75
`
`. - - - - - - - -
`IINIC FILE CACHE 801
`
`_______ ----1
`
`ICCBI
`I CACHE I
`~ 74_1
`
`JJ
`58'/ .... 1 [ R~
`I L _________________________________ -- -------------------------------------------------------- -------
`
`LAN/WAN25
`
`INTERNET 28
`
`INIC STORAGE
`UNIT 70
`
`FIG. 1
`
`Ex.1001.005
`
`DELL
`
`
`
`
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 4 of 25
`
`US 7,124,205 B2
`
`RECEIVE FILE REQUEST FROM NETWORK, PROCESS REQUEST
`WITH STACK, DIRECT TO FILE SYSTEM
`S
`200
`LOCATE REQUESTED FILE ON HOST FILE CACHE, INIC FILE
`CACHE, HOST STORAGE UNIT OR INIC STORAGE UNIT
`)
`2~
`202
`/
`READ FILE BLOCKS
`TO HOST FILE CACHE
`
`/
`
`/
`
`206
`,-J
`READ FILE BLOCKS
`/
`TO IKIC FILE CACHE
`
`212
`S
`
`CREATE NETWORK
`FRAMES FROM FILE
`BLOCKS IN HOST BY
`CPU RUNNING STACK
`
`210
`~
`
`FAST PATH?
`
`NO
`
`YES
`
`218
`,J
`CREATE HEADERS BY
`INrc FROM CCB, DMA
`DATA TO INIC VIA CCB,
`PREP END HEADERS TO
`DATA TO CREATE
`NETWORK FRAMES
`
`.~ .
`
`2')')
`
`NO
`
`CREATE HEADERS
`BY CPU RUNNING
`STACK, INSTRUCT
`INIC TO ASSEMBLE
`FRAMES FROM
`HEADERS AND FILE
`BLOCKS IN INIC
`
`220
`
`~PA1H?
`
`YES
`
`225
`,J
`CREATE HEADERS
`BY INIC FROM CCB,
`PREPEND HEADERS
`TO DATA TO CREATE
`KETWORK FRAMES
`
`2~
`DMA
`FRAMES TO
`INIC
`
`2~
`
`SEND FRAMES ONTO NETWORK
`
`FIG. 4
`
`Ex.1001.008
`
`DELL
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 5 of 25
`
`US 7,124,205 B2
`
`FIRST
`NETWORK
`25
`
`FIRST INIC
`STORAGE
`UNIT 66
`
`NTH
`NETWORK
`313
`
`NTHINIC
`STORAGE
`UNIT 315
`
`INIC 400
`
`HOST
`20
`
`HOST
`STORAGE
`UNIT 66
`
`I
`
`-------- 40
`
`SECOND
`INIC 303
`
`FIRST
`INIC 22
`
`NTH
`INIC 310
`
`FIG. 5
`
`450
`
`\
`
`SECONDINIC
`STORAGE
`UNIT 308
`
`SECOND
`NETWORK
`305
`
`,--- SAN 418
`
`FIRST
`ETHER-SCSI
`ADAPTER
`452
`
`SECOND
`ETHER-SCSI
`ADAPTER
`454
`
`THIRD
`ETHER-SCSI
`ADAPTER
`456
`
`458~
`
`459~
`
`460~
`
`FIRST
`STORAGE
`UNIT.1@.
`
`SECOND
`STORAGE
`UNIT .4M:
`
`THIRD
`STORAGE
`UNIT .1QQ
`
`FIG. 7
`
`Ex.1001.009
`
`DELL
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 6 of 25
`
`US 7,124,205 B2
`
`HOST
`MEMORY
`33
`
`PROTOCOL
`STACK 38
`
`METADATA
`CACHE 26
`
`HOST FILE
`CACHE 24
`
`HOST 20
`
`CPU 30
`
`PROCESSOR 408
`
`I
`
`3\
`
`BRIDGE
`42
`
`4~
`
`BRIDGE
`406
`
`HOST
`STORAGE
`UNIT 66
`
`~62
`
`HOST 110
`CTRL64
`
`404
`)
`
`SEQUENCERS 412
`
`INIC MEMORY 410
`
`424,/ ..... 1
`
`1
`
`-o~~~-
`422"-~[J[J== =~
`
`INIC 400
`
`--,--------
`
`1 FRAME BUFFERS 430 1
`
`1 INIC FILE CACHE 433 1
`
`FIRST LAN
`414
`
`SECOND LAN
`416
`
`FIRST SAN
`418
`
`SECOND SAN
`420
`
`FIG. 6
`
`Ex.1001.010
`
`DELL
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 7 of 25
`
`US 7,124,205 B2
`
`PROCESSOR 480
`
`4~7
`
`FIRST
`ETIIER-SCSI
`ADAPTER
`452
`
`SEQUENCERS 475
`
`MAC 472
`
`PRY 470
`
`450-.../'
`
`INIC 400
`
`I
`ADAPTER1\1EMORY 482
`
`I FRAME BUFFERS 484 1
`
`SCSI
`CTRL488
`
`I FILE CACHE 486
`
`1
`
`v---458
`FIRST
`STORAGE
`UNIT 462
`
`FIG. 8
`
`FIRST LAN
`414
`
`HOST
`20
`
`SECOND LAN
`416
`
`FIRST
`INIC 400
`
`FIRST SAN
`418
`
`HOST
`STORAGE
`UNIT 66
`
`I
`
`NTH
`INIC 490
`
`NTH SAN
`492
`
`SECOND SAN
`420
`
`~40
`
`NTH LAN
`494
`
`FIG. 9
`
`Ex.1001.011
`
`DELL
`
`
`
`
`
`
`
`
`
`--------------,
`CLIENT 602
`
`5MB 616
`
`I
`NETBIOS 6141
`
`ATCP 612 ~
`TCP 611 f I ~ 620
`IP 610
`618
`,
`: , ,
`,
`t :
`t
`I lNIC~ Ii
`L __ __ ___ J _____ J
`
`MAC 608
`
`,- - - - - - - - - - - - - - .,
`!
`:
`SERVER 600
`
`MAC 624
`
`I :
`I 5MB 632
`1 NETBIOS 630' .
`r+l ATCP 628 I:
`648~ ,
`" TCP 627
`,
`646~ IP626
`,
`I
`I
`I ,
`:
`,
`:
`,
`L __
`
`639
`
`INIC 622
`
`(
`
`604
`
`-2
`
`650
`
`(
`
`644
`
`2 652
`
`FIG. 14
`
`SERVER
`ATTACHED
`I STORAGE UNIT
`634
`~638
`
`NAS STORAGE
`UNIT
`642
`
`NETWORK
`STORAGE UNIT
`640
`I
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`o (')
`:-+-....
`~-....l
`N o
`o
`0\
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`....
`o ....
`
`N
`Ul
`
`d
`rJl
`",-.....1
`""'"' N
`"'~
`
`N = tit = N
`
`Ex.1001.015
`
`DELL
`
`
`
`MICRO(cid:173)
`PHONE
`680
`----.-
`
`SPEAKER
`678
`
`AUDIONIDEO
`INTERFACE
`677
`
`1
`
`DISPLAY
`682
`
`CAMERA
`684
`
`--------------..,
`CLIENT 602
`
`--------------..,
`SERVER 600
`
`APP 663
`
`~TPIRTCP QQ2j
`
`AUDP661 ~
`~620 648j--
`I
`I
`
`UDP 660
`
`IP Q1Q
`
`MAC 608
`
`INIC 606
`
`I
`L ___ ___ 1 ___ ___ ---'
`
`APP 657
`
`TPIRTCP 656
`
`I
`
`AUDP 655
`
`UDP654
`
`618 646~
`MAC 624
`
`639
`
`I
`I
`I
`I I
`:
`:
`OOC6n
`I'--,-,---,-----.----~
`L __
`
`SERVER
`ATTACHED
`STORAGE
`UNIT 634
`
`MICRO(cid:173)
`PHONE
`670
`
`SPEAKER
`638rJ I 668
`
`AUDIONIDEO
`INTERFACE
`~
`
`( (
`
`604
`
`650
`
`FIG. 15
`
`NETWORK
`~STORAGE
`y-- (
`I UNIT 640
`
`DISPLAY
`672
`
`652
`
`644
`
`CAMERA
`674
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`o (') ... ....
`
`~-....l
`N o
`o
`0\
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`N
`o ....
`
`N
`Ul
`
`d
`rJl
`",-.....1
`"""'" N
`~
`
`N = tit = N
`
`Ex.1001.016
`
`DELL
`
`
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 14 of 25
`
`US 7,124,205 B2
`
`CLOCK
`
`/ _________ 7: _____ ~------7------Z----- ~ ___
`r
`r
`79~
`CONTROLS FOR FIRST REGISTER SET
`
`to
`
`/
`
`(
`I
`I
`I
`I
`I
`/
`
`)
`I
`I
`I
`
`I
`I
`I
`"-
`
`/
`I
`I
`I
`I
`I
`I
`I
`)
`
`/
`800\
`"-
`
`""'I
`
`/
`
`860<'
`"-
`
`790\
`
`,
`
`1
`
`833\
`
`1r
`
`FIRST REGISTER SET
`
`805-----
`
`"->-- ------- - - - - - - ------- ------- f - - -
`
`/
`
`798\
`
`RAM FILE
`~.EGISTER
`f - - -
`
`INSTRUCTION DECODER
`AND
`OPERAND MULTIPLEXER
`
`796\1
`
`SECOND REGISTER SET
`
`~II I
`
`"-
`I
`I
`
`I
`I
`I
`~
`"-
`
`"--- ------- - - - - - - ------- ------- f - - - - - - - - ------
`/
`
`/
`r
`I
`I
`STACK
`I
`I EXCHANGE
`I
`I
`I
`
`808
`
`/
`900(
`"-
`
`)
`I
`III I
`I
`I
`I
`
`( "-
`
`780
`
`~
`
`ARITHlVIETIC LOGIC UNIT
`
`QUEUE
`
`,
`
`802)
`
`~
`
`803)
`
`1
`
`"-
`
`
`
`'- -~ - - - - - ~ - - - -
`
`-
`
`THIRD REGISTER SET
`801~
`
`'\.. - - - - - -~ - - - - - ~ - -
`FIG. 17
`
`- - \.. - --
`
`-
`
`Ex.1001.018
`
`DELL
`
`
`
`----Z--/-=--/---L---/---L/----r=1L---/---~-~-L----
`..
`..
`•
`I •
`--'--
`~
`LOAD
`LOAD ~
`CTRL
`
`8~O
`\
`\
`r---L
`I
`I
`I
`I
`I
`
`I r 192
`
`SRAM LOAD
`CTRL CTRL
`
`02
`8
`
`..
`
`:
`I
`I
`I
`I ,
`y
`:
`(:
`
`CTRL
`
`DEC
`
`
`ETCH LOAD
`CTRL
`CTRL
`
`808
`
`810
`
`81;1
`
`•
`
`+
`
`1
`
`•
`
`833.\
`J 1
`ADDR
`C
`
`835 \
`+
`J+
`•
`D~ /INSTR[FETCH
`REG IADDR
`
`+
`
`~
`
`PC ISTACKIDEBUG
`ADDR
`
`ALU FLAG
`CCS REGS
`
`ADDR
`&
`FILE
`(' DATA CTX
`
`W5-----
`
`790 82
`,
`I
`L __ _
`
`• •
`
`---- ----
`
`1
`
`,
`
`~-~----~----~----~---~--------
`
`838) I 840) I 844) I 848)
`..
`..
`,
`
`•
`
`RAM FILE
`REGISTER
`
`DOUT DOUT
`
`ADDR ADDR
`
`FIG. 18A
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`o (')
`~ ....
`~-....l
`N o
`o
`0\
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`Ul
`o ....
`
`N
`Ul
`
`d
`rJl
`",-.....1
`"""'" N
`~
`
`N = tit = N
`
`Ex.1001.019
`
`DELL
`
`
`
`860_
`"-
`
`\
`1---...1.
`
`-
`
`-
`
`-
`
`-
`
`- -1 - _
`
`_
`
`- ____ _ -~-----
`
`~-+----~----~----~---------
`
`ADDR DIN
`C
`C
`
`I
`I
`1
`I
`1
`1
`
`•
`•
`1 r FILE I ALU / ALU / ALU I TEST /FLAGIQCH&/ LIT / PGM / PC
`
`.,
`
`.,
`
`*"
`/STACK/DEBUG
`CTX OPDS CCS
`OP
`SEL
`SEL QCMD
`CTRL
`/
`ADDR
`7
`879) 1880J 1882) 18s47 1885) 1887) 1889) 1890) I ;;;··1894} 1898)
`
`7961
`1 877
`I L.. ____ _
`
`,
`
`----~---~-------------- -
`,
`,
`FIG. 18B
`
`,
`
`-
`
`- -I- -
`
`-
`
`- -.- -
`
`-
`
`-
`
`,
`
`1
`1
`1
`1
`1
`
`1
`1
`1
`
`1
`
`SCRATCH
`SRAM
`:7
`I 865
`I
`I
`I
`I
`I
`I
`1
`I
`I
`I
`
`,
`
`RAM FILE
`REGISTER
`
`DOUT DOUT
`ADDR ADDR
`I
`1833 )
`
`,
`
`INSTRUCTION DECODER
`AND
`OPERAND MUL TIPI ,EXER
`
`1
`
`*"
`
`i 7987
`
`INCR
`
`INCR
`
`868)
`
`870)
`
`805~
`
`o
`~ ....
`~-....l
`N o
`o
`0\
`
`LOADI~
`CTRL
`
`875) I
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`rFJ =(cid:173)
`('D a ....
`o ....
`
`0\
`
`N
`Ul
`
`d
`rJl
`",-.....1
`"""'" N
`~
`
`N = tit = N
`
`Ex.1001.020
`
`DELL
`
`
`
`900
`\
`
`I ,
`
`"---+----
`
`----I----~----
`
`•
`
`Ir
`
`•
`
`ALU
`
`..
`TESTm
`
`I
`
`QRAM
`&
`QALU
`
`I
`MUX
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`----I----~---------------
`
`STACK
`EXCHANGE
`
`LOAD
`CTRL
`
`908
`
`..
`
`..
`
`..
`
`..
`
`..
`
`LIT PGM PC STACK DEBUG
`CTRL
`ADDR
`
`I
`
`~805
`
`(')
`
`0
`:-+-....
`
`~-....l
`N
`0
`0
`0\
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`-....l
`o ....
`
`N
`Ul
`
`902) 1
`
`1904) 1
`
`1906
`
`~
`
`Ir
`
`~
`
`~
`
`Ir
`QFLGS
`DEST
`FILE ALU ALU OPD TEST FLAG
`&
`CTX OUT CCS RSLT RSLT SEL QADDR
`
`•
`
`Ir
`
`916
`
`FIG. 18C
`
`d
`rJl
`",-.....1
`"""'" N
`~
`
`N = tit = N
`
`Ex.1001.021
`
`DELL
`
`
`
`
`
`
`
`
`
`•
`,r
`MUX
`,---~ 0
`
`~ ~
`,IT
`~
`MUX
`'=! 7
`
`/
`
`/.
`
`I
`.n
`MUX
`'=! 8
`
`n
`. n
`r:: 9
`
`MUX
`
`/.
`
`"/
`
`1215
`
`-# -
`
`' .
`MUX
`r;=: 15
`
`. - 1210
`
`2
`
`..
`
`C7
`
`-----./ "---./ _"'- R8 I-
`12
`
`.;
`
`-----f1'----J1-~ R9
`1
`
`r--
`
`.;
`
`C8
`
`C9
`
`L.../I-I"---- R15 r-
`10
`
`..
`
`C15
`
`L./I-
`
`/.
`
`3
`
`CO
`
`RO ~ LI-",- R 7 -
`.;
`
`""\
`1244
`1249
`1254
`1239,r ~ r ~ , ~
`
`1259
`~ r
`
`~1266
`
`1230J
`
`LOGIC CIRCUITS
`
`PROCESSOR
`
`FIG. 23
`
`780
`
`. - 1200
`
`~1220
`
`1235
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`o (') ... ....
`
`~-....l
`N o
`o
`0\
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`N ....
`o ....
`
`N
`Ul
`
`d
`rJl
`",-.....1
`"""'" N
`~
`
`N = tit = N
`
`Ex.1001.025
`
`DELL
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 22 of 25
`
`US 7,124,205 B2
`
`NETWORK
`IN~C22
`L2105
`1.. __ 2101
`,-
`-----~-----------~------------ ---,
`I
`PHYSICAL r---- 712
`I
`I
`LAYER
`I
`I
`ASIC 400
`INTERF.
`I
`1 - - - - - - - ---------2-----------------1
`I
`I
`2230 )
`( 2229
`~
`~
`I
`I
`2109 ~ 722 QUEUE
`I
`I
`MNGR rv 2103
`MEDIA
`:
`
`PROC
`
`Ii
`
`
`
`:
`
`1
`
`A~~S §2~2§
`~BE;l
`-~410 2108 t 2113 210e
`SEQ~~CERS tONFIG.1
`I RXSEQ I
`I
`2105
`~
`I
`2107
`PCI
`BUS ~r'
`2228 ~ 744
`INT.
`SRAM P
`I I
`SRAML-----~ CTRL ~~-----+--)~42~--~
`: I
`748 "" ~ DRAM
`~l~fi~g: } 2110
`CTRL
`L
`
`IIX ll~ I
`
`mlm2
`
`~475
`7)6
`
`TXSEQ
`2104
`
`HOST 20
`
`}
`r-- L - - - - ,
`I
`I
`
`I~I
`I CPU30
`:
`I
`I
`I
`I
`
`757
`
`HOST
`STORAGE
`UNIT.6Q
`
`1
`
`i
`
`I
`I
`I
`----------------------------------
`~--~----~ DRAM
`f.-- 755
`STATUS
`~/-r--22-2-3 ------1 } BUFFER
`2114
`I
`
`FIG. 24
`
`Ex.1001.026
`
`DELL
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 23 of 25
`
`US 7,124,205 B2
`
`QUEUE
`MANAGER
`
`MAC
`2213 2214 2227
`III
`)
`~.
`j
`2210 2209
`2215""\.
`222h-/
`8 v
`r
`~ 2105
`~.
`I
`___ ~ ______________ 1 t- ~-----:---------- ~---~
`.. r
`PACKET
`
`2200
`
`DATA
`r-
`SYNC
`SYNC
`I~ 2222
`k.:EQUENCER
`BUFFER
`~ p.
`~ 22Ql
`\ 2268
`J 3}'
`/
`------------
`, ')~-22IK~ - rv2219
`~ --~
`2212 ~
`~2~~18
`PACKET
`DATA
`ASSEMBLY
`/ -;:5
`PROCESSING ISUMMARY]
`~ 2224
`I REGISTER
`/3 2320
`SEQUENCER
`k=
`3
`2204
`I
`I
`~ ____ +-L~~
`L----~------~--r_--~
`2217
`
`I
`I
`:
`QUEUE
`I
`: MANAGER:
`INTERF ACE
`I
`t
`I
`2205
`I
`\
`
`II
`
`I
`
`L
`/
`2230
`
`--r--
`
`2207
`
`'" 2211
`
`/
`
`r.-2228
`I STATUS 1- 2223
`PROTOCOL
`ANALYZER
`2203
`
`t--~
`
`r--------L--...L..----,
`DMA
`CONTROL
`2206
`
`i
`
`I
`I
`I
`I
`I
`L - - - - - - - - - f - - - - - - - - - - - - - - - - - - - - - - - - - - - r - ----'
`----,-- 2225
`----,-- 2226
`c
`C
`SRAM
`DRAM
`CONTROLLER
`CONTROLLER
`~2214
`~IS_TA_TU __ S~I ____ DA_T_A __ ~!
`~
`2223
`
`FIG. 25
`
`Ex.1001.027
`
`DELL
`
`
`
`
`
`u.s. Patent
`
`Oct. 17,2006
`
`Sheet 25 of 25
`
`US 7,124,205 B2
`
`n;CCB I PROTOCOL
`~ d STORAGE
`
`STACK 2411
`: DESTINATION
`
`2413
`
`ISCSI LAYER 2412
`COMPUTER 2401
`____________ C..,
`---~ ----
`1 HOS
`T COMPUTER 2407
`I
`I
`r - - - - +----
`...l_____
`~2417
`I
`ISCSI 5MB
`I
`TCP
`:
`IP
`:
`MAC
`I
`NID DRIVER
`I
`I 2408
`t
`I
`i
`2410
`I ICCBr2418
`2409",
`I
`-iscs,--!------~ NETWORK
`L __ ~.c?_~_~~~ _________ > INTERFACE
`READ
`I"'-.. f-f- f-kf,\:
`REQUEST~ DEVICE
`ICOMMAND
`'-y------
`I
`2402
`~~~~A~~ - - -~ISC~6~~~N~E2~~iST j
`L - ;A~: ;A~:a::: - -
`J.
`/
`~41~
`
`FAST-
`PATH
`
`2400
`Y"
`
`ISCSI
`TARGET 2404
`r-----S-----
`I
`I
`NETWORK
`I STORAGE DEVICE:
`I
`I
`I 241~ I
`: 2414 ~:
`I HBA <-_____ j
`I
`I
`I
`I :
`I ~L _________ ~
`
`2405
`
`I
`
`24 3
`
`FAST-PATH TO
`DESTINATION
`
`STATUS MESSAGE
`2419
`
`POINTER TO
`ORIGINAL
`ISCI COMMAND
`2420
`
`~
`
`TCP PACKETS WITH DATA PAYLOADS
`BACK FROM ISCSI TARGET
`
`FIG. 27
`
`2419
`
`~
`
`STATUS INCLUDING
`ISCSI COMMAND SENT
`BIT AND FLUSHED BIT
`2421
`
`V
`
`PTR
`STATUS
`RESID INDICATION ~
`INDICATION OF PART
`OF DESTINATION
`THAT STILL NEEDS
`TO BE FILLED
`2422
`
`COMMAND STATUS
`MESSAGE
`
`FIG. 28
`
`Ex.1001.029
`
`DELL
`
`
`
`US 7,124,205 B2
`
`1
`NETWORK INTERFACE DEVICE THAT
`FAST-PATH PROCESSES SOLICITED
`SESSION LAYER READ COMMANDS
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`The present application claims the benefit under 35 USC
`§ 119 of U.S. Patent Application Ser. No. 601061,809, filed
`Oct. 14, 1997, and U.S. Patent Application Ser. No. 601098,
`296, filed Aug. 27, 1998, and claims the benefit under 35
`USC § 120 of U.S. patent application Ser. No. 091067,544,
`filed Apr. 27, 1998, U.S. patent application Ser. No. 091141,
`713, filed Aug. 28, 1998, U.S. patent application Ser. No. 15
`09/384,792, filed Aug. 27,1999, U.S. patent application Ser.
`No. 09/416,925, filed Oct. 13, 1999, U.S. patent application
`Ser. No. 09/439,603, filed Nov. 12, 1999, U.S. patent appli(cid:173)
`cation Ser. No. 09/464,283, filed Dec. 15, 1999, U.S. patent
`application Ser. No. 09/514,425, filed Feb. 28, 2000, U.S. 20
`patent application Ser. No. 09/675,484, filed Sep. 29, 2000,
`U.S. patent application Ser. No. 09/675,700, filed Sep. 29,
`2000, U.S. patent application Ser. No. 09/692,561, filed Oct.
`18,2000, U.S. patent application Ser. No. 091748,936, filed
`Dec. 26, 2000, U.S. patent application Ser. No. 091789,366, 25
`filed Feb. 20, 2001, U.S. patent application Ser. No. 09/801,
`488, filed Mar. 7, 2001, U.S. patent application Ser. No.
`09/802,551, filed Mar. 9, 2001, U.S. patent application Ser.
`No. 09/802,426, filed Mar. 9, 2001, U.S. patent application
`Ser. No. 09/802,550, filed Mar. 9, 2001, U.S. patent appli- 30
`cation Ser. No. 09/804,553, filed Mar. 12,2001, and the U.S.
`patent application Ser. No. 09/855,979, filed May 14, 2001,
`all of which are incorporated by reference herein.
`
`BACKGROUND
`
`Over the past decade, advantages of and advances in
`network computing have encouraged tremendous growth of
`computer networks, which has
`in tum spurred more
`advances, growth and advantages. With this growth, how- 40
`ever, dislocations and bottlenecks have occurred in utilizing
`conventional network devices. For example, a CPU of a
`computer connected to a network may spend an increasing
`proportion of its time processing network communications,
`leaving less time available for other work. In particular,
`demands for moving file data between the network and a
`storage unit of the computer, such as a disk drive, have
`accelerated. Conventionally such data is divided into pack-
`ets for transportation over the network, with each packet
`encapsulated in layers of control information that are pro(cid:173)
`cessed one layer at a time by the CPU of the receiving
`computer. Although the speed of CPUs has constantly
`increased, this protocol processing of network messages
`such as file transfers can consume most of the available
`processing power of the fastest commercially available 55
`CPU.
`This situation may be even more challenging for a net(cid