throbber
111111
`
`1111111111111111111111111111111111111111111111111111111111111
`US007337241B2
`
`(12) United States Patent
`Boucher et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,337,241 B2
`Feb. 26,2008
`
`(54) FAST-PATH APPARATUS FOR RECEIVING
`DATA CORRESPONDING TO A TCP
`CONNECTION
`
`(75)
`
`Inventors: Laurence B. Boucher, Saratoga, CA
`(US); Stephen E. J. Blightman, San
`Jose, CA (US); Peter K. Craft, San
`Francisco, CA (US); David A. Higgen,
`Saratoga, CA (US); Clive M. Philbrick,
`San Jose, CA (US); Daryl D. Starr,
`Milpitas, CA (US)
`
`(73) Assignee: Alacritech, Inc., San Jose, CA (US)
`
`( *) Notice:
`
`Subject to any disclaimer, the tenn of this
`patent is extended or adjusted under 35
`U.S.c. 154(b) by 879 days.
`
`(21) Appl. No.: 101260,878
`
`(22) Filed:
`
`Sep. 27, 2002
`
`(65)
`
`Prior Publication Data
`
`US 2004/0064578 Al
`
`Apr. 1,2004
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 15116
`(52) U.S. Cl. ...................................................... 7091250
`(58) Field of Classification Search ................. 709/250
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,366,538 A
`4,485,455 A
`4,485,460 A
`4,589,063 A
`4,700,185 A
`
`1211982 Johnson et al. ............. 364/200
`1111984 Boone et al.
`............... 364/900
`1111984 Stambaugh ................. 365/203
`511986 Shah et al. .................... 710/8
`1011987 Balph et aI . ................ 370/451
`
`4,991,133 A
`
`2/1991 Davis et aI ................. 364/900
`(Continued)
`
`FOREIGN PATENT DOCUMENTS
`
`WO
`
`WOl98119412
`511998
`(Continued)
`
`OTHER PUBLICATIONS
`Internet pages entitled "Hardware Assisted Protocol Processing",
`(which Eugene Feinberg is working on), 1 page, printed Nov. 25,
`1998.
`
`(Continued)
`
`Primary Examiner-David Wiley
`(74) Attorney, Agent, or Firm-Mark Lauer; Silicon Edge
`Law Group LLP
`
`(57)
`
`ABSTRACT
`
`A system for protocol processing in a computer network has
`an intelligent network interface card (INIC) or communica(cid:173)
`tion processing device (CPD) associated with a host com(cid:173)
`puter. The INIC provides a fast-path that avoids protocol
`processing for most large multi-packet messages, greatly
`accelerating data communication. The INIC also assists the
`host for those message packets that are chosen for process(cid:173)
`ing by host software layers. A communication control block
`for a message is defined that allows DMA controllers of the
`INIC to move data, free of headers, directly to or from a
`destination or source in the host. The context is stored in the
`INIC as a communication control block (CCB) that can be
`passed back to the host for message processing by the host.
`The INIC contains specialized hardware circuits that are
`much faster at their specific tasks than a general purpose
`cpu. A preferred embodiment includes a trio of pipelined
`processors with separate processors devoted to transmit,
`receive and management processing, with full duplex com(cid:173)
`munication for four fast Ethernet nodes.
`
`24 Claims, 89 Drawing Sheets
`
`50
`
`46
`
`48
`
`UPPER
`LAYER
`UPPER LAYER
`INTERFACE
`
`TRANSPORT
`
`NETWORK
`
`DATA LINK
`
`\
`
`44
`
`56
`
`INIC/CPD
`
`40
`
`38
`
`36
`
`30
`
`52
`"-
`
`35
`
`58
`
`INTEL Ex.1001.001
`
`

`

`US 7,337,241 B2
`Page 2
`
`u.s. PATENT DOCUMENTS
`5,056,058 A
`1011991 Hirata et al. ................ 7091230
`5,058,110 A
`1011991 Beach et al. ............... 370/85.6
`311992 Ward et al. ................... 365/78
`5,097,442 A
`1111992 Row et al. .................. 395/200
`5,163,131 A
`511993 Dally et al. ................. 395/400
`5,212,778 A
`111994 Trapp ........................ 370/85.1
`5,280,477 A
`211994 Latif et al. .................. 395/275
`5,289,580 A
`411994 Yokoyama et al.
`......... 395/275
`5,303,344 A
`511995 Hausman et al. ........... 395/250
`5,412,782 A
`511995 Christenson ................ 7091234
`5,418,912 A
`911995 Richter et al. ............. 370194.1
`5,448,566 A
`111996 Dobbins et al.
`............ 3701255
`5,485,455 A
`5,485,460 A
`111996 Schrier et al.
`.............. 703/227
`111996 Hitz et al .............. 395/200.12
`5,485,579 A
`411996 Ban ........................... 395/250
`5,506,966 A
`411996 Suda .......................... 395/280
`5,511,169 A
`511996 Szwerinski et al. ......... 395/800
`5,517,668 A
`611996 Chesson et al.
`............ 395/775
`5,524,250 A
`711996 Eshel ... ... ..... ... ... ... ...... 703/27
`5,535,375 A
`5,548,587 A *
`811996 Bailey et al.
`............ 370/395.7
`5,548,730 A
`811996 Young et al.
`............... 395/280
`1011996 Bakke et al.
`................. 370/60
`5,566,170 A
`1111996 Netravali et al.
`........... 7121220
`5,574,919 A
`1211996 Reddin et al.
`......... 395/200.15
`5,588,121 A
`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 al ............. 395/200.01
`5,619,650 A
`511997 Delp et al. .................. 370/411
`5,629,933 A
`511997 Cronin ....................... 3611220
`5,633,780 A
`511997 Andrews et al. ....... 395/200.07
`5,634,099 A
`511997 Cloud et al ................. 395/680
`5,634,127 A
`611997 Pardillos .................. 395/200.2
`5,642,482 A
`911997 Krech, Jr. et al.
`...... 395/200.64
`5,664,114 A
`911997 Collins .................... 395/200.2
`5,671,355 A
`5,678,060 A
`1011997 Yokoyama et al.
`......... 7091212
`1011997 Kapoor et al. .............. 7091203
`5,682,534 A
`1111997 Shobu et al.
`.......... 395/200.12
`5,692,130 A
`1211997 Sartore et al.
`......... 395/230.06
`5,699,317 A
`1211997 Kraslavsky ................. 3701254
`5,699,350 A
`1211997 Nakagawa .................. 395/484
`5,701,434 A
`1211997 Cheng et al.
`............... 395/842
`5,701,516 A
`5,717,691 A *
`211998 Dighe et al ................. 370/401
`5,727,142 A
`311998 Chen .......................... 395/181
`411998 Wong et al. ................ 7091230
`5,742,765 A
`511998 Hagersten ................... 7111141
`5,749,095 A
`511998 Chan et al. ................. 370/455
`5,751,715 A
`511998 Delp et al. .................. 395/827
`5,752,078 A
`511998 Silverstein et al.
`. ... 395/200.58
`5,758,084 A
`511998 Gentry et al ........... 395/200.64
`5,758,089 A
`511998 Hamilton et al. ........... 395/831
`5,758,186 A
`511998 Kuzma ....................... 395/886
`5,758,194 A
`611998 Erickson et al. ... ... ... ... ... 71019
`5,768,618 A
`611998 Picazo, Jr. et al. ...... 3951188.01
`5,771,349 A
`711998 Jedwab ....................... 714/807
`5,778,013 A
`5,778,419 A *
`711998 Hansen et al. .............. 711/112
`5,790,804 A
`811998 Osborne ................ 395/200.75
`5,794,061 A
`811998 Hansen et al. ......... 395/800.01
`911998 Chen ..................... 3951182.08
`5,802,258 A
`911998 McAlpire ................... 7111149
`5,802,580 A
`911998 Nogales et al. ............. 395/825
`5,809,328 A
`911998 Van Seeters et al.
`... 395/200.43
`5,812,775 A
`911998 Purcell et al.
`.............. 395/163
`5,815,646 A
`1011998 Isfeld et al.
`................ 7091200
`5,828,835 A
`1211998 Gentry .......................... 710/5
`5,848,293 A
`211999 Wakeland ................... 7091230
`5,872,919 A
`311999 Bilanskyet al ........ 395/200.57
`5,878,225 A
`5,892,903 A *
`411999 Klaus ......................... 7091227
`5,898,713 A
`411999 Melzer et al.
`................ 371153
`611999 Wang et al.
`........... 395/200.53
`5,913,028 A
`5,920,566 A *
`711999 Hendel et al.
`.............. 370/401
`
`5,930,830 A
`5,931,918 A
`5,935,205 A
`5,937,169 A
`5,941,969 A
`5,941,972 A
`5,950,203 A
`5,970,804 A
`5,974,466 A *
`5,987,022 A
`5,991,299 A *
`5,996,013 A
`5,996,024 A
`6,005,849 A
`6,009,478 A
`6,016,513 A
`6,021,446 A
`6,021,507 A
`6,026,452 A
`6,034,963 A
`6,038,562 A
`6,041,058 A
`6,041,381 A
`6,044,438 A
`6,047,323 A
`6,047,356 A
`6,049,528 A
`6,057,863 A
`6,061,368 A
`6,065,096 A
`6,067,569 A
`6,070,200 A
`6,078,564 A
`6,078,733 A
`6,097,734 A
`6,101,555 A
`6,111,673 A
`6,115,615 A *
`6,122,670 A
`6,141,701 A
`6,141,705 A
`6,145,017 A
`6,157,955 A
`6,172,980 Bl
`6,173,333 Bl
`6,181,705 Bl
`6,202,105 Bl
`6,223,242 Bl
`6,226,680 Bl
`6,246,683 Bl
`6,247,060 Bl
`6,279,051 Bl
`6,289,023 Bl
`6,298,403 Bl
`6,324,649 Bl
`6,334,153 B2
`6,343,360 Bl
`6,345,301 Bl
`6,345,302 Bl
`6,356,951 Bl
`6,370,599 Bl
`6,385,647 Bl
`6,389,468 Bl
`6,389,479 Bl
`6,421,742 Bl
`6,421,753 Bl
`6,427,169 Bl
`6,427,173 Bl
`6,434,651 Bl
`6,449,656 Bl
`6,453,360 Bl
`6,473,425 Bl
`6,480,489 Bl
`
`7/1999 Mendelson et al. ......... 7111171
`8/1999 Row et al. .................. 709/300
`8/1999 Murayama et al. ......... 7091216
`8/1999 Connery et al .......... 395/200.8
`8/1999 Ram et al. .................. 710/128
`811999 Hoese et al. ................ 710/129
`911999 Stakuis et al. ................ 707/10
`1011999 Osborne ................ 395/200.75
`1011999 Mizutani et al. ............ 7091236
`11/1999 Geiger et al ................ 370/349
`11/1999 Radogna et al. ............ 370/392
`1111999 Delp et al. .................. 7091226
`11/1999 Blumenau ................... 709/301
`12/1999 Roach et al.
`............... 370/276
`12/1999 Panner et al. .................. 710/5
`112000 Lowe ......................... 7091250
`212000 Gentry, Jr.
`.................. 709/303
`212000 Chen ............................. 714/2
`212000 Pitts ............................ 710/56
`312000 Minami et al.
`............. 370/401
`3/2000 Anjur et al ................... 707/10
`3/2000 Flanders et al ............. 370/401
`3/2000 Hoese ........................ 710/129
`312000 Olnowich ................... 7111130
`4/2000 Krause ....................... 7091227
`4/2000 Anderson et al. ........... 7111129
`4/2000 Hendel et al.
`.............. 3701235
`5/2000 Olarig ........................ 345/520
`5/2000 Hitzelberger ............... 370/537
`5/2000 Dayet al .................... 7111114
`5/2000 Khaki et al. ................ 7091224
`5/2000 Gates et al.
`.................. 71 0120
`6/2000 Lakshman et al ........... 3701235
`6/2000 Osborne ..................... 7091250
`8/2000 Gotesman et al. .......... 370/474
`8/2000 Goshey et al ............... 709/321
`8/2000 Chang et al.
`............... 359/123
`912000 Ota et al.
`................ 455/422.1
`912000 Bennett et al.
`1012000 Whitney ........................ 710/5
`1012000 Anand et al. ................. 710115
`........................ 710/5
`1112000 Ghaffari
`1212000 Narad et al. ................ 7091228
`112001 Flanders et al ............. 370/401
`112001 Jolitz et al.
`112001 Branstad et al. ............ 370/412
`3/2001 Gates et al.
`.................. 71 0120
`4/2001 Mayer et al.
`............... 370/392
`5/2001 Boucher et al.
`............ 7091230
`6/2001 Connery et al ............. 370/392
`6/2001 Boucher et al.
`............ 7091238
`8/2001 Gates et al.
`.................. 71 0120
`9/2001 Dowling et al ............. 370/419
`10/2001 Suri et al .................... 710/100
`11/2001 Eyres et al.
`................ 713/202
`12/2001 Boucher et al.
`............ 7091230
`112002 Feinleib ......................... 713/1
`212002 Burns et al ................. 7091230
`212002 Bennett et al.
`. ............ 7091236
`3/2002 Gentry, Jr.
`.................. 7091250
`4/2002 Anand et al. ................. 710115
`5/2002 Wills et al. ................. 7091217
`5/2002 Muller et al ................ 7091226
`5/2002 Boucher ..................... 7091243
`7/2002 Tillier ........................... 710/1
`712002 Hoese et al. ................ 710/129
`7/2002 Elzur ......................... 7091224
`7/2002 Boucher et al.
`............ 7091238
`8/2002 Gentry, Jr.
`.................. 710/260
`912002 Elzur et al. ................. 7091236
`912002 Muller et al ................ 7091250
`1012002 Bellaton et al.
`............ 370/392
`11/2002 Muller et al ................ 370/389
`
`INTEL Ex.1001.002
`
`

`

`US 7,337,241 B2
`Page 3
`
`6,487,202 Bl
`6,487,654 B2
`6,490,631 Bl
`6,502,144 Bl
`6,523,119 B2
`6,526,446 Bl
`6,570,884 Bl
`6,591,310 Bl
`6,648,611 B2
`6,650,640 Bl
`6,657,757 Bl
`6,658,480 B2
`6,678,283 Bl
`6,681,364 Bl
`6,697,868 B2
`6,765,901 Bl
`6,807,581 Bl
`6,842,896 Bl
`6,912,522 B2
`6,941,386 B2
`6,965,941 B2
`200110004354 Al
`200110013059 Al
`200110014892 Al
`200110014954 Al
`200110025315 Al
`200110048681 Al
`200110053148 Al
`200210073223 Al
`200210112175 Al
`2003/0066011 Al
`2003/0110344 Al
`2003/0165160 Al
`2004/0054814 Al
`2004/0059926 Al
`2004/0153578 Al
`2004/0213290 Al
`2004/0246974 Al
`
`1112002 Klausmeier et al . ..... 370/395.1
`1112002 Dowling
`12/2002 Teich et al .................. 7091250
`12/2002 Accarie ........ ...... ........... 710/8
`212003 Pavlin et al.
`............... 713/192
`212003 Yang et al.
`................. 7091230
`5/2003 Connery et al.
`............ 370/419
`7/2003 Johnson ........ ...... ........... 710/3
`1112003 Morse et al.
`............... 417/310
`1112003 Muller et al. ............... 370/392
`1212003 Chang et al.
`............... 359/124
`1212003 Boucher et al.
`............ 7091239
`112004 Teplitsky .................... 370/463
`112004 Calvignac et al.
`212004 Craft et al.
`................. 7091230
`7/2004 Johnson et al. ............. 370/352
`1012004 Starr et al. .................. 7091250
`112005 Redding et al.
`............ 717/172
`6/2005 Edgar
`912005 Craft et al.
`................. 7091250
`1112005 Boucher et al.
`7091230
`6/2001 Jolitz
`8/2001 Dawson et al.
`8/2001 Gaither et al.
`8/2001 Purcell et al.
`9/2001 Jolitz
`1212001 Bilic et al. .................. 370/389
`1212001 Bilic et al. .................. 370/389
`6/2002 Darnell et al. .............. 7091232
`8/2002 Makofka et al. ............ 713/200
`4/2003 Oren .......................... 714/758
`6/2003 Szczepanek et al. ........ 7111100
`912003 Minami et al.
`370/466
`3/2004 McDaniel
`3/2004 Angelo et al.
`8/2004 Elzur
`10/2004 Johnson et al.
`12/2004 Gyugyi et al.
`
`709/217
`707/200
`................. 714/4
`
`713/168
`
`370/469
`370/395.31
`
`FOREIGN PATENT DOCUMENTS
`
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`WO
`
`WOl98/50852
`WOl99104343
`WO 99/65219
`WO 00/13091
`WO 01104770 A2
`WO 01105107 Al
`WO 01105116 A2
`WO 01105123 Al
`WO 01140960 Al
`WO 01159966
`WO 01186430
`
`1111998
`111999
`12/1999
`312000
`112001
`112001
`112001
`112001
`6/2001
`8/2001
`1112001
`
`OTHER PUBLICATIONS
`
`Zilog product Brief entitled "Z85C30 CMOS SCC Serial Commu(cid:173)
`nication Controller", Zilog Inc., 3 pages, 1997.
`Internet pages of Xpoint Technologies, Inc. entitled "Smart LAN
`Work Requests", 5 pages, printed Dec. 19, 1997.
`Internet pages entitled: Asante and 1 OOBASE-T Fast Ethernet, 7
`pages, printed May 27, 1997.
`the Paragon XP/S-A7
`to
`Internet pages entitled: A Guide
`Supercomputer at Indiana University, 13 pages, printed Dec. 21,
`1998.
`Richard Stevens, "TCP/IP Illustrated, vol. 1, The Protocols", pp.
`325-326 (1994).
`Internet pages entitled: Northridge/Southridge 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.
`
`VIA Technologies, Inc. article entitled "VT8501 Apollo MVP4",
`pp. i-iv, 1-11, cover and copyright page, revision 1.3, Feb. 1,2000.
`iReady News Archives article entitled "iReady Rounding Out
`Management Team with Two Key Executives", http://www.
`ireadyco.comlarchives/keyexec.html, 2 pages, printed Nov. 28,
`1998.
`"Toshiba Delivers First Chips to Make Consumer Devices Internet(cid:173)
`Ready Based on iReady's Design," Press Release Oct. 1998, 3
`pages, printed Nov. 28, 1998.
`Internet pages from iReady Products, web sitehttp://www.ireadyco.
`cornlproducts,htrnl, 2 pages, downloaded Nov. 25, 1998.
`iReady News Archives, Toshiba, iReady shipping Internet chip, 1
`page, printed Nov. 25, 1998.
`Interprophet article entitled "Technology", http://www.interprophet.
`cornltechnology.htrnl, 17 pages, printed Mar. 1, 2000.
`iReady Corporation, article entitled "The 1-1000 Internet Tuner", 2
`pages, date unknown.
`iReady article entitled "About Us Introduction", Internet pages
`frornhttp://www.iReadyco.comiabout.htrnl.3pages.printed Nov.
`25, 1998 .
`iReady News Archive article entitled "Revolutionary Approach to
`Consumer Electronics Internet Connectivity Funded", San Jose,
`CA, Nov. 20, 1997. 2 pages, printed Nov. 2, 1998.
`iReady News Archive article entitled "Seiko Instruments Inc. (SII)
`Introduces World's First Internet-Ready Intelligent LCD Modules
`Based on iReady Technology," Santa Clara, CA and Chiba, Japan,
`Oct. 26, 1998, 2 pages, printed Nov. 2, 1998.
`NEWSwatch article entitled "iReady internet Tuner to Web Enable
`Devices", Tuesday, Nov. 5, 1996, printed Nov. 2, 1998.
`EETimes article entitled "Tuner for Toshiba, Toshiba Taps iReady
`for Internet Tuner", by David Lammers, 2 pages, printed Nov. 2,
`1998.
`"Comparison of Novell Netware and TCP/IP Protocol Architec(cid:173)
`tures", by J.S. Carbone, 19 pages, printed Apr. 10, 1998.
`Adaptec article entitled "AEA-7110C-a DuraSAN product", 11
`pages, printed Oct. 1, 2001.
`iSCSI HBA article entitled "iSCSI and 2Gigabit fibre Channel Host
`Bus Adapters from Emulex, QLogic, Adaptec, JNI", 8 pages,
`printed Oct. 1, 2001.
`iSCSI HBA article entitled "FCE-32 10/6410 32 and 64-bit PCI-to(cid:173)
`Fibre Channel HBA", 6 pages, printed Oct. 1,2001.
`ISCSI.com article entitled "iSCSI Storage", 2 pages, printed Oct. 1,
`2001.
`"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.
`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.
`U.S. Appl. No. 601053,240, filed Jul. 18, 1997, Jolitz et al.
`U.S. Appl. No. 08/964,304, by Napolitano, et aI., entitled "File
`Array Storage Architecture", filed Nov. 4, 1997.
`"File System Design For An NFS File Server Appliance", Article by
`D. Hitz, et aI., 13 pages.
`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 Jul. 19, 2000.
`Adaptec article entitled "EtherStorage White Paper", 7 pages,
`printed Jul. 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 Botttieneck", 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.
`Internet pages entitled "Technical White Paper-Xpoint's Disk to
`LAN Acceleration Solution for Windows NT Server," 16 pages,
`printed Jun. 5, 1997.
`
`INTEL Ex.1001.003
`
`

`

`US 7,337,241 B2
`Page 4
`
`Jato Technologies article entitled "Network Accelerator Chip Archi(cid:173)
`tecture," twelve-slide presentation, printed Aug. 19, 1998.
`EETimes article entitled "Enterprise System Uses Flexible Spec,"
`dated Aug. 10, 1998, printed Nov. 25, 1998.
`Internet pages entitled "Smart Ethernet Network Interface Cards",
`which Berend Ozceri is developing, printed Nov. 25, 1998.
`Internet pages of Xaqti corporation entitled "GigaPower Protocol
`Processor Product Review," printed Nov. 25, 1999.
`Internet pages entitled "DART: Fast Application Level Networking
`via Data-Copy Avoidance," by Robert J. Walsh, printed Jun. 3,
`1999.
`Internet pages of InterProphet entitled "Frequently Asked Ques(cid:173)
`tions", by Lynne Jolitz, printed Jun. 14, 2000.
`Internet pages entitled "iReady Products," printed Nov. 25, 1998.
`Andrew S. Tanenbaum, "Computer Networks," Third Edition, 1996,
`ISBN 0-13-349945-6.
`Form lO-K for Exelan, Inc., for the fiscal year ending Dec. 31, 1987
`(10 pages).
`Form lO-K for Exelan, Inc., for the fiscal year ending Dec. 31, 1988
`(10 pages).
`"Second Supplement Information Disclosure Statement per 37
`C.F.R. § 1.97(i)", dated Jui. 29, 2002 relating to Exelan Inc. as
`submitted in U.S. Appi. No. 09/464,283.
`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.
`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, 5
`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, Jui. 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.
`Lilienkarnp et ai., Publication entitled "Proposed Host-Front End
`Protocol", 56 pages, Dec. 1984.
`Thia, YH. Publication entitled "High-Speed OSI Protocol Bypass
`Algorithm with Window Flow Control", Protocols for High Speed
`Networks, pp. 53-68, 1993.
`Thia, YH. Publication entitled "A Reduced Operational Protocol
`Engine (ROPE) for a multiple-layer bypass architecture", Protocols
`for High Speed Networks, pp. 224-239, 1995.
`U.S. Appi. No. 601283,896, Titled: CRC Calculations for Out of
`Order PUDs, filed Apr. 12, 2003, Inventor: Amit Oren, Assignee:
`Siliquent Technologies Ltd.
`U.S. Appi. No. 08/964,304, by Napolitano, et ai., entitled "File
`Array Storage Architecture", filed Nov. 4, 1997.
`"File System Design For An NFS File Server Appliance", Article by
`D. Hitz, et ai., 13 pages, Jui. 17, 2003.
`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.
`Article from Rice University, Department of Computer Science
`entitled "Lazy Receiver Processing (LRP): A New Network Sub(cid:173)
`system Architecture for Server Systems", by Peter Druschel and
`Gaurav Banga, 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.
`* cited by examiner
`
`INTEL Ex.1001.004
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 1 of 89
`
`US 7,337,241 B2
`
`r - - - - - - - - - - - - - - - - - - - - - - - - . . . ,
`HOST
`I
`f---
`I
`I
`1
`I
`I
`I
`1
`1
`1
`
`35~
`STORAGE f-----
`
`28
`
`'\
`
`I - -
`
`CPU
`
`20
`
`.".-
`
`1
`
`1
`
`1
`I
`1
`
`1
`1
`1
`I
`__ I
`
`I
`I
`I
`I
`I
`I
`I
`30 1
`~ CPD
`
`r 22
`
`REMOTE
`HOST
`
`1 -
`
`~33
`
`I
`1
`1
`I
`L _____ -----------------
`
`25\
`
`FIG. 1
`
`( 46
`
`(50
`
`42,,-
`
`CONTEXT - ) :
`
`J
`
`54
`
`r-
`40
`
`UPPER
`LAYER
`UPPER LAYER
`INTERFACE
`
`TRANSPORT
`
`52
`~
`
`NETWORK
`
`38~
`,-- DATA LINK
`36
`
`J~
`
`56
`~
`
`30\
`
`~ 48\ ..
`.
`
`STORAGE
`
`~
`35
`
`~8
`
`\
`
`44
`
`INIC/CPD
`
`FIG. 2
`
`INTEL Ex.1001.005
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 2 of 89
`
`US 7,337,241 B2
`
`RECEIVE PACKET
`FROM NETWORK
`BYCPD
`
`VALIDATE PACKET,
`SUMMARIZE
`HEADERS
`
`47
`
`57
`
`61
`
`5~
`
`FAST PATH
`CANDIDATE?
`
`NO
`
`SEND PACKET TO
`STACK POR SLOW-
`PATH PROCESSING
`
`67
`
`YES
`
`53
`
`65
`
`MATCH WITH
`CCB?
`
`NO
`
`SEND PACKET TO
`STACK FOR SLOW-
`PATH PROCESSING
`
`YES
`
`69
`
`SEND TO
`DESTINATION
`IN HOSTVTA
`FAST-PATH
`
`FIG. 3
`
`CREATE CCB FOR
`MESSAGE
`
`51
`
`INTEL Ex.1001.006
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 3 of 89
`
`US 7,337,241 B2
`
`REMOTE
`HOST
`
`25
`
`32
`
`FIG.4A
`
`65 r - - - - - - - l
`SESS f----~__=_o 63
`I
`I
`T~S 40
`'
`,
`NETW
`38
`,
`DLfNK
`36
`:
`~44
`
`REMOTE
`HOST
`
`42 68 ,-------1
`~~-~S~E~S~S_r--~~I ~1 66
`:
`~~==~~~~I TRANS
`I
`30~
`40 35:
`I
`I 55
`25
`~
`38
`NETW
`I
`'-1
`f------L--~RECElVE LOGIC I
`~ _______ :
`DLINK
`36
`I
`I
`~--~
`32~------------' 56
`FIG.4B
`
`~44
`
`REMOTE
`HOST
`
`REMOTE
`HOST
`
`72
`1------------1
`'
`60
`~' t - J ' L-,,.----r1
`2 2
`,
`30~ ,
`25
`~~,
`
`62
`42
`40
`38
`36
`
`32
`
`FIG.4C
`
`,
`r--- - - -1
`,
`'
`1 21
`,
`35
`'
`70'
`~ 66
`:
`I
`,
`L _______ ,
`
`SESS
`TRANS
`NETW
`DLINK
`
`~44
`
`----- 76
`CCB
`:
`40
`'-r-r-.--,---,-C_A_C_HE---I:
`PROCESSOR ,55 38
`36
`\.78
`
`___________ J
`
`f--7----L--~
`
`TRANS
`NETW
`
`DLINK
`
`FIG.4D
`
`-1
`
`r--r---1~ I ,
`L--~'--r-' , ,
`80 : ,
`
`INTEL Ex.1001.007
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 4 of 89
`
`US 7,337,241 B2
`
`99
`22
`r - - - - - - - - - - - -1
`~~~~ 60: ~~
`~T~~~E~SN~S S~-L-7-r~fI :
`MOTE 30 ~MEMI
`RE
`1
`--'
`-.. i ,--'---___ --'---,
`NETW
`:
`HOST
`25
`1
`1
`I~----,,----i DLINK
`- - -,- - --
`L , - - - - - - - - '
`96
`35 --(cid:173)
`~44
`
`-..
`
`1
`
`1
`
`FIG. 5
`
`1
`
`/
`
`152-, - - - - - - - - - - - - - - -1
`1 ' I
`1
`FAST-PATH
`: > SOURCEIDEST
`168 -r
`
`... ~
`
`166
`
`1
`..1
`
`1
`
`APPLICATION
`
`15l
`:---L---t -------\- -
`
`150~, 170
`
`185
`
`1
`
`PROCESSOR
`
`1
`
`1
`
`1
`
`S
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`164~ TRANSPORT
`162
`~~ NETWORK
`160~
`1 SLOW-PATH
`
`1 HARDWARE LOGIC
`I
`:~
`L __________________ ' . C 157
`171
`FIG. 6
`
`1
`
`~155
`,~
`
`1
`
`DATA LINK
`
`1
`
`.1 _____ \: _______
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`-'
`
`158
`
`INTEL Ex.1001.008
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 5 of 89
`
`US 7,337,241 B2
`
`MEDIA ACCESS ~ 172
`CONTROLLER
`
`,
`ASSEMBLY ~ 174
`REGISTER
`
`(178
`)
`
`1-------1-.~ FLYBY
`.~----~SEQUENCER
`
`~
`~-----l
`
`1
`
`MULTIPLEXOR~ 180
`
`SRAM
`
`SRAM
`CONTROL
`
`11r
`
`DRAM CONTROL
`
`--
`
`( 186
`
`1r
`
`DRAM ~188
`
`FIG. 7
`
`PACKET
`CONTROL
`SEQUENCER
`J
`
`Ir
`
`QUEUE
`184~ MANAGER
`
`INTEL Ex.1001.009
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 6 of 89
`
`US 7,337,241 B2
`
`176
`---------------
`
`PACKET
`CONTROL
`SEQUENCER
`
`174
`
`)
`
`...
`
`ASSEMBLY
`REGISTER
`
`r
`
`r----- 191
`
`MAC
`SEQUENCER
`
`r--------- 192
`
`NETWORK
`SEQUENCER
`
`178
`
`,
`
`TRANSPORT
`SEQUENCER
`
`___________ 194
`
`-
`
`,Ir
`
`SESSION ~195
`SEQUENCER -
`
`\180
`
`r
`
`MULTIPLEXOR
`
`FIG. 8
`
`INTEL Ex.1001.010
`
`

`

`FAST-PATH :~ SOURCEIDEST
`t34r~ __ ~~~~\_~3~_}2~4( ~l _ ~ 237
`~~
`--~r -~ -I
`r--P-R-O-C-,E-S-S-O-R-'----I--)r--h:
`1
`1
`:
`
`I
`
`1
`
`231
`
`:
`1
`~ HARDWARE LOGIC 4
`262~HARD
`OGC
`~
`WARE L
`I 3 S
`217
`1 (sI
`L
`242 I I ' HARDWARE LOGIC 21\
`: HARDWARE LOGIC 1
`'--
`" L;:'::'210-nn-tn_n26~- '. C .' n ____ \~~---'
`1
`
`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 7 of 89
`
`US 7,337,241 B2
`
`270
`
`222--i
`1 APPLICATION
`_
`220: t - - - - - - -H
`217---------r TRANSPORT
`1
`215~t-----.-.----H
`1 NETWORK
`- '-- 1
`1
`: SLOW-PATHi MAC
`1
`
`1
`
`I
`
`1
`:
`1
`
`240 J
`
`~t,
`
`~
`
`250
`
`205
`
`202
`
`FIG. 9
`
`TDIUSERS ~ 382
`- - -
`TDI FILTER DRIVER
`380 I~
`& UPPER LAYER INTERFACE
`
`370 I~ ATCP
`
`360
`
`---
`TCP ~ 358
`
`366
`.~
`
`IP
`
`IP ~ 355
`
`350
`
`363 ~ MAC
`- - -
`375 ~ NDIS
`""
`,If
`
`MAC ~ 353
`- - -
`
`""
`
`~
`
`377 ~ INIC MINIPORT DRIVER
`
`FIG. 11
`
`INTEL Ex.1001.011
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 8 of 89
`
`US 7,337,241 B2
`
`r-~------------------------------I
`
`300
`~ 318~ UPPERLAYER
`
`I
`I
`I
`
`I<IIIII~""JI-: ___ .....,
`
`UPPER LAYER INTERFACE
`
`I
`I
`I
`I
`I
`316
`I
`TRANSPORT ~
`:
`
`202/~,_~
`I
`I
`:
`I
`I
`I
`330~
`I
`I
`325~ TRANSPORT
`I
`I
`
`322~ NETWORK
`
`NETWORK ~ 314
`
`I
`I
`I
`I
`320~ DATA LINK
`DATALINK ~ 312
`I
`I
`I
`~ - - -----;:---- - - - -- - - - - - ~ , - -"-=-310-J
`
`306 ~ INTC MINIPORT DRIVER
`
`240~
`
`200~
`
`(
`
`210
`
`INIC
`
`INIC
`MEMORY ~304
`
`FIG. 10
`
`INTEL Ex.1001.012
`
`

`

`CLIENT
`
`5MB
`
`NETBIOS
`
`r------------------~
`I
`I
`190 ,~...-- "1
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`--l.--159
`
`168
`
`166
`
`164
`157
`162
`
`160
`
`150
`
`.------- SERVER - -----1_...--, 290
`
`237
`
`5MB
`
`NETBIOS
`
`TCP
`
`IP
`
`MAC
`
`210
`
`INIC
`
`I
`I
`
`222
`
`220
`
`217
`_____ 231
`
`215
`
`212
`
`200
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`""f'j
`('D
`?'
`N
`~Cl\
`N o
`o
`QO
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`\0
`o ....
`
`QO
`\0
`
`TCP
`
`IP
`
`MAC
`
`INIC
`
`L ________ ~ ____ ____ _
`
`L _____ _
`
`___ J
`
`240
`
`244
`
`242
`
`FIG. 12
`
`d
`rJl
`---l
`W
`W
`---l
`N
`~
`
`"""'" = N
`
`INTEL Ex.1001.013
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 10 of 89
`
`US 7,337,241 B2
`
`210
`
`400_, 240
`\
`___ ____ 1 _ ___ _
`
`MAC-A
`
`402 MAC-B
`
`200
`~
`
`04
`
`42
`
`244
`
`MAC-C
`
`406
`
`MAC-D
`
`1
`1
`
`:
`
`- - - -1
`
`410
`
`412
`
`414
`
`1
`1
`1
`
`1
`
`416 1
`
`XMT &
`RCV-A
`
`418
`
`XMT&
`RCV-B
`
`420
`
`XMT&
`RCV-C
`
`422
`42
`
`XMT&
`RCV-D
`
`428
`
`426
`
`REG FILE
`WCS
`ROM
`
`480
`
`477
`
`430
`
`43
`
`440
`
`SRAM
`
`EXTERNAL
`MEMORY
`CTRL
`
`,- - - - - ----,
`'438
`'441
`:
`
`1
`
`: DMA CTRL
`1
`1
`
`1
`
`~---MICR6-----,
`470
`1
`PROCESSOR
`L - /
`UTILITY
`486 :
`SRAM
`TRANSMI ~! CTRL
`RECEIVE : 472
`:
`442
`1
`484
`1
`[ __________ \_1
`\~444
`482 :
`
`,4~~ f -: -----~
`
`PCI BU~6:1ERF ACE UNIT
`
`1
`
`1
`
`1 _ __ _ -_ - - - - - - - - - - - - - - - - - -
`
`257
`
`FIG. 13
`
`1
`1
`1
`1
`1
`___________________ J
`
`446
`
`450
`
`468
`
`(
`
`1
`1
`1
`
`455
`I - - - - - - - J
`
`DRAM
`
`460
`
`INTEL Ex.1001.014
`
`

`

`u.s. Patent
`
`Feb. 26,2008
`
`Sheet 11 of 89
`
`US 7,337,241 B2
`
`CLOCK r- _(- __ ___ _ j! ______ L ______ /- _____ _ L ______ ~ __
`
`/
`
`/
`I
`I
`I
`I
`I
`I
`
`/
`
`1
`
`1
`
`49~
`
`CONTROLS FOR FIRST REGISTER SET
`
`/
`
`500\
`,
`
`I~
`
`~
`
`FIRST REGISTER SET
`
`)
`I
`I
`I
`I I
`I
`I
`, ,
`I
`>--1 - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - ---
`
`505 ~
`
`533)
`
`RAM FILE
`REGISTER
`1--
`
`490\
`
`/
`
`/
`I
`I
`I
`I
`I
`I
`I
`J
`
`/
`
`, ,
`560(
`
`I
`I
`
`498\
`
`r
`
`INSTRUCTION DECODER
`AND
`OPERAND MULTIPLEXER
`
`496\1
`
`~
`
`,
`
`SECOND REGISTER SET
`
`~ I
`I
`II I
`I
`I
`I , ,
`>-- 1 - - - - - - - - - - - - - - - - - - - - - - c-------- - - - - - - - - - - - -
`,
`
`/
`
`/
`I
`I
`I
`STACK
`I
`I EXCHANGE
`I
`I
`~608
`
`/
`
`/
`
`600"" , ,
`
`)
`I
`I
`III :
`
`(:"
`470
`
`ARITHMETIC LOGIC UNIT
`
`QUEUE
`
`602)
`
`503)
`
`r
`
`r
`
`r
`
`r
`
`r
`
`THIRD REGISTER SET
`501~
`
`'--~------~----- ~------~------~----- ~--
`
`FIG. 14
`
`INTEL Ex.1001.015
`
`

`

`500
`
`\
`\
`
`J
`
`I
`I
`I
`I
`I
`J--..ISRAM\LOADILOAD
`( !
`CTRL CTRL CTRL
`492:
`:
`I
`I
`I
`...
`I
`I
`ADDR
`:
`~ &
`ALU FLAG
`FILE
`CCS REGS
`(:
`(' DATA CTX
`490 I 5 20 TI---L-TT-.L=-n~L,.--~-.--.----
`
`~---L-L---L---/----L--L---/---/L---r=1L--L--J!---L--
`•
`•
`I.
`...
`r
`
`FLAG
`DEC
`
`•
`Ir
`PIN ADDR
`
`J
`
`LOAD
`CTRL
`
`502) I 504) I 506)
`
`508)
`
`•
`
`,
`
`r
`
`533 \
`J ~.
`ADDR
`C
`
`510
`
`535 \
`~.
`
`J
`•
`D~IINSTR~ETCH
`REG IADDR
`
`517)
`
`J
`
`1
`
`505 ""--
`
`•
`
`PC ISTACKIDEBUG
`ADDR
`
`I
`I
`L ___ _
`
`- - - -
`
`__ - -1 - -
`
`• J
`
`J
`
`•
`
`•
`
`...
`
`RAM FILE
`REGISTER
`
`538) I 540) I 544) I 548)
`
`1--1-----
`
`-
`
`-
`
`-
`
`-
`
`I- -
`
`-
`
`- -1- -
`
`-
`
`- ~ -
`
`-
`
`-
`
`-
`
`-
`
`-
`
`•
`
`...
`
`•
`
`Ir
`
`J
`
`DOUT DOUT
`
`ADDR ADDR
`
`FIG. 15A
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`""f'j
`('D
`?'
`N
`~Cl\
`N o
`o
`QO
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`N
`o ....
`
`QO
`\0
`
`d
`rJl
`-....l
`W
`W
`-....l
`N
`~
`
`"""'" = N
`
`INTEL Ex.1001.016
`
`

`

`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`SCRATCH
`SRAM
`)
`:
`I 565
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`..
`
`: 498 J
`
`I
`I
`I
`I
`I
`I
`:
`
`560-
`\
`\ _..1 ___ _
`
`------4----*----~--
`
`•
`
`ADDR DIN
`C
`C
`
`1 - - - - - - - ----~----~----------
`
`RAM FILE
`REGISTER
`
`•
`
`..
`
`•
`
`r--I DOUT DOUTh
`
`ADDR ADDRI
`I
`)
`1533
`
`• •
`
`•
`
`INSTRUCTION DECODER
`AND
`OPERAND MULTIPLEXER
`
`INCR
`
`INCR
`
`568)
`
`570)
`
`..
`
`•
`
`505~
`
`•
`
`LOAD~ ,
`'"
`CTRL I
`
`575)
`
`~
`
`•
`
`PGM
`CTRL
`
`..
`
`•
`
`PC ISTACKIDEBUG
`ADDR
`
`..
`..
`•
`..
`r CTX OPDS CCS
`I FILE I ALU \ ALU ALU I TEST I FLAG IQCH&I LI
`OP
`SEL
`SEL QCMD
`T
`579) 1580) 1582) 15871585) I 587} 158----;; 1590) I 59) 1594) 1598)
`, •
`..
`
`496: 577
`I
`L-----~----+----~----~---~----4----+----~----~---~----~----~------
`r
`r
`
`•
`
`r
`
`..
`
`•
`
`r
`r
`FIG. 15B
`
`r
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`""f'j
`('D
`?'
`N
`~Cl\
`N o
`o
`QO
`
`('D
`('D
`
`(.H
`
`rFJ =(cid

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