Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/16
G06F-012/00
출원번호
US-0881271
(2004-06-29)
등록번호
US-7461160
(2008-12-02)
발명자
/ 주소
Boucher,Laurence B.
Blightman,Stephen E. J.
Craft,Peter K.
Higgen,David A.
Philbrick,Clive M.
Starr,Daryl D.
출원인 / 주소
Alacritech, Inc.
대리인 / 주소
Lauer,Mark
인용정보
피인용 횟수 :
20인용 특허 :
192
초록▼
A Network Interface device (NI device) coupled to a host computer receives a multi-packet message from a network (for example, the Internet) and DMAs the data portions of the various packets directly into a destination in application memory on the host computer. The address of the destination is det
A Network Interface device (NI device) coupled to a host computer receives a multi-packet message from a network (for example, the Internet) and DMAs the data portions of the various packets directly into a destination in application memory on the host computer. The address of the destination is determined by supplying a first part of the first packet to an application program such that the application program returns the address of the destination. The address is supplied by the host computer to the NI device so that the NI device can DMA the data portions of the various packets directly into the destination. In some embodiments the NI device is an expansion card added to the host computer, whereas in other embodiments the NI device is a part of the host computer.
대표청구항▼
What is claimed is: 1. A method for use by a network interface for a host computer running an application, the method comprising: running, on the network interface, a TCP connection for the application; receiving, by the network interface, multi-packet message including a first packet and a plurali
What is claimed is: 1. A method for use by a network interface for a host computer running an application, the method comprising: running, on the network interface, a TCP connection for the application; receiving, by the network interface, multi-packet message including a first packet and a plurality of subsequent packets, each of the plurality of subsequent packets containing a TCP header portion, an IP header portion and a data portion; passing, by the network interface, at least a portion of the first packet of the multi-packet message to the host computer; receiving, by the network interface, an indication of a destination in memory on the host computer, the destination controlled by the application; and writing, by the network interface, the data portions of the subsequent packets into the destination without writing any TCP header portion into the destination and without writing any IP header portion into the destination. 2. The method of claim 1, wherein the multi-packet message has a data payload, and writing the data portions of the subsequent packets into the destination includes writing the entire data payload by the network interface into the destination. 3. The method of claim 1, wherein the network interface is an intelligent network interface card (INIC) that includes a DMA engine, and writing the data portions of the subsequent packets into the destination includes writing the data portions by DMA. 4. The method of claim 1, further comprising storing the address of the destination with the TCP connection on the network interface. 5. A method comprising: receiving, by a network interface device for a host computer, a message containing a plurality of packets having a TCP header and a data portion; passing at least a portion of a first of the packets from the network interface device to the host computer, wherein said at least a portion includes a session layer header; receiving, by the network interface device, an indication of a destination in host memory, in response to the passing at least a portion of the first packet to the host computer; and transferring, by the network interface device, the data portions of any of the plurality of packets subsequent to the first packet into the destination without writing any TCP header portion of any of the subsequent packets into the destination. 6. The method of claim 5, wherein the network interface device comprises an expansion card and an application specific integrated circuit (ASIC). 7. The method of claim 5, wherein only a portion of the first packet is passed to the host computer when passing at least a portion of the first packet to the host computer, such that the host computer generates the indication of the destination without receiving the entire first packet. 8. The method of claim 5, wherein the host computer includes a motherboard, and wherein the network interface device is disposed on the motherboard. 9. A method comprising: receiving, by a network interface device for a host computer, a message containing a first packet and a plurality of subsequent packets having a TCP header portion and a data portion, the TCP header portion indicating an application in the host computer; passing a first part of the first packet, but not a second part of the first packet, from the network interface device to the host computer, the first part of the first packet including a session layer header portion; receiving, by the network interface device from the host computer, an indication of a destination in host memory provided by the application; and transferring, by the network interface device, the data portions of the subsequent packets into the destination without writing any TCP header portion of any of the subsequent packets into the destination. 10. The method of claim 9, further comprising: transferring, by the network interface device, the second part of the first packet from the network interface device and into the destination. 11. The method of claim 9, wherein the indication of the destination in host memory comprises a plurality of addresses and a plurality of lengths. 12. The method of claim 9, wherein the message is communicated over a TCP/IP connection, and wherein the TCP/IP connection is setup before passing the first part of the first packet from the network interface device to the host computer. 13. The method of claim 9, wherein the application determines from the session layer header how much session layer data is contained in the message, and wherein the application determines how big the destination should be in order to contain all the session layer data of the message, and wherein all the session layer data is written into the destination such that no TCP headers are present in the destination and such that no IP headers are present in the destination. 14. The method of claim 13, wherein all the session layer data is written into the destination and such that no session layer headers are present in the destination.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (192)
Chan Kurt ; Black Alistair D., Accelerator fiber channel hub and protocol.
Bennett Toby D. ; Davis Donald J. ; Harris Jonathan C. ; Miller Ian D., Apparatus and method for constructing data for transmission within a reliable communication protocol by performing portions of the protocol suite concurrently.
Nogales Charles Edward ; Sooy William Glenn, Apparatus for fibre channel transmission having interface logic, buffer memory, multiplexor/control device, fibre channe.
Silverstein Alan ; Golson William G. ; Mallal Munir, Apparatus for parallel client/server communication having data structures which stored values indicative of connection.
Chesson Greg (Palo Alto CA) Choi In-whan (Mountain View CA) Lin Yuh-wen (San Jose CA) Smith Jeannine M. (Menlo Park CA) Yau Daniel (Los Altos CA) Young Desmond W. (Campbell CA), Central processing unit for processing a plurality of threads using dedicated general purpose registers and masque regis.
Wang Frank ; Robertson Jeffrey S. ; Gopal Nuggehalli N. ; Pheterson Charles J. ; Goldflam Michael S., Client/server data traffic delivery system and method.
Philbrick,Clive M.; Boucher,Laurence B.; Starr,Daryl D., Data communication apparatus for computer intelligent network interface card which transfers data between a network and a storage device according designated uniform datagram protocol socket.
Andrews Lawrence P. (Boca Raton FL) Arias Derrick (Coral Springs FL) Mandalia Baiju D. (Boca Raton FL) Ortega Oscar E. (Miami Beach FL) Sinibaldi John C. (Pompano Beach FL) Williams Kevin B. (North L, Direct memory access unit for transferring data between processor memories in multiprocessing systems.
Bilansky Mark Alan ; Huang Kevin Chuang-Chi ; Ryder James William ; Stavana Edward James, Dual communication services interface for distributed transaction processing.
Sartore Ronald H. (San Diego CA) Mobley Kenneth J. (Colorado Springs CO) Carrigan Donald G. (Monument CO) Jones Oscar Frederick (Colorado Springs CO), Enhanced DRAM with all reads from on-chip cache and all writers to memory array.
Boucher,Laurence B.; Blightman,Stephen E. J.; Craft,Peter K.; Higgen,David A.; Philbrick,Clive M.; Starr,Daryl D., Fast-path apparatus for receiving data corresponding a TCP connection.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Fast-path apparatus for receiving data corresponding to a TCP connection.
Boucher,Laurence B.; Blightman,Stephen E. J.; Craft,Peter K.; Higgen,David A.; Philbrick,Clive M.; Starr,Daryl D., Fast-path apparatus for receiving data corresponding to a TCP connection.
Boucher,Laurence B.; Blightman,Stephen E. J.; Craft,Peter K.; Higgen,David A.; Philbrick,Clive M.; Starr,Daryl D., Fast-path processing for receiving data on TCP connection offload devices.
Panner Bryan K. ; Hoskins Timothy Lee ; Napolitano Richard, File array communications interface for communicating between a host computer and an adapter.
Eshel Marc M. (Tarrytown NY) Hunt Guerney D. H. (Ithaca NY) Jones Donald N. (Vestal NY) Meyer Christopher (Vestal NY) Schwartz Frederick A. (Binghamton NY), File manager for files shared by heterogeneous clients.
Isfeld Mark S. ; Mallory Tracy D. ; Mitchell Bruce W. ; Seaman Michael J. ; Arunkumar Nagaraj ; Srisuresh Pyda, High throughput message passing process using latency and reliability classes.
Cheng Yu-Ping (San Jose CA) Hitz David (Sunnyvale CA), High-performance non-volatile RAM protected write cache accelerator system employing DMA and data transferring scheme.
Chang, Gee-Kung; Way, Winston I., High-throughput low-latency next generation internet network using optical label switching and high-speed optical header generation detection and reinsertion.
Gates Stillman F. ; Suri Salil, Host adapter capable of simultaneously transmitting and receiving data of multiple contexts between a computer bus and peripheral bus.
Gates Stillman F. ; Suri Salil, Host adapter having paged payload buffers for simultaneously transferring data between a computer bus and a peripheral bus.
Laurence B. Boucher ; Stephen E. J. Blightman ; Peter K. Craft ; David A. Higgen ; Clive M. Philbrick ; Daryl D. Starr, Intelligent network interface device and system for accelerated communication.
Boucher, Laurence B.; Philbrick, Clive M.; Starr, Daryl D.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A., Intelligent network interface system and method for accelerated protocol processing.
Boucher Laurence B. ; Blightman Stephen E. J. ; Craft Peter K. ; Higgen David A. ; Philbrick Clive M. ; Starr Daryl D., Intelligent network interface system method for protocol processing.
Laurence B. Boucher ; Stephen E. J. Blightman ; Peter K. Craft ; David A. Higgen ; Clive M. Philbrick ; Daryl D. Starr, Intelligent network interfaced device and system for accelerated communication.
Dally William J. (Framingham MA) Chien Andrew A. (Urbana IL) Horwat Waldemar P. (Hoffman Estates IL) Fiske Stuart (Montreal CAX), Message-driven processor in a concurrent computer.
Shimon Muller ; Denton E. Gentry, Jr. ; Linda T. Cheng ; John E. Watkins, Method and apparatus for data re-assembly with a high performance network interface.
Richter Roger K. (Round Rock TX) Stark ; Jr. David R. (Austin TX), Method and apparatus for facilitating communication in a multilayer communication architecture via a dynamic communicati.
Hamilton Graham ; Kessler Peter B. ; Nisewanger Jeffrey D. ; Bishop Alan ; Pelegri-Llopart Eduardo, Method and apparatus for generically handling diverse protocol method calls in a client/server computer system.
Stakuis Chrisopher J. ; Stearns Kevin M., Method and apparatus for high-speed access to and sharing of storage devices on a networked digital data processing syst.
Delp Gary Scott ; Guerin Roch A. ; Leichty Philip Lynn ; Peris Vinod Gerard John ; Rajan Rajendran ; Slane Albert Alfonse, Method and apparatus for resource allocation with guarantees.
Delp Gary S. (Rochester MN) Slane Albert A. (Orocono MN), Method and system for enhanced communication in a multisession packet based communication system.
Erickson Gene R. ; Hundley Douglas E. ; Muller P. Keith ; Stehley Curtis H., Method for performing sequence of actions in device connected to computer in response to specified values being writte.
Shobu Toshifumi (Atsugi JPX) Ogasawara Fumihiro (Ebina JPX), Method for selectively using one or two communication channel by a transmitting data terminal based on data type and cha.
Lowe Glen H., Method of preventing packet loss during transfers of data packets between a network interface card and an operating system of a computer.
Cloud Donald M. (Jamestown RI) Kelly Kevin F. (East Greenwich RI) Bonaccorsi David P. (Warwick RI) Weeks Mark K. (Berkley MA), Methods and apparatus for implementing a message driven processor in a client-server environment.
Hitz David (Sunnyvale CA) Schwartz Allan (Saratoga CA) Lau James (Cupertino CA) Harris Guy (Mountain View CA), Multiple facility operating system architecture.
Minami John Shigeto ; Koyama Ryo ; Johnson Michael Ward ; Shinohara Masaru ; Poff Thomas C. ; Burkes Daniel F., Multiple network protocol encoder/decoder and data processor.
Flanders John A. ; Ross Ryan T. ; Townsend William D. ; Lamaire Thomas A. ; Radogna Thomas V. ; Bailey Brian W. ; Sousa Marc D., Multiple protocol support.
Gentry ; Jr. Denton E., Network device driver performing initial packet processing within high priority hardware interrupt service routine and then finishing processing within low priority software interrupt service routine.
Blightman,Stephen E. J.; Starr,Daryl D.; Philbrick,Clive M., Network interface device for error detection using partial CRCS of variable length message portions.
Isfeld Mark S. (San Jose CA) Mitchell Bruce W. (San Jose CA) Seaman Michael J. (Mountain View CA) Mallory Tracy D. (San Jose CA) Arunkumar Nagaraj (San Jose CA), Network intermediate system with message passing architecture.
Bach Maurice J. (Haifa ILX) Hoppes Robert B. (Hyde Park NY) Meltzer Clifford B. (Ossining NY) Parchinski Kenneth J. (Wappingers Falls NY) Whelan Gary J. (Rhinebeck NY), Network processor for transforming a message transported from an I/O channel to a network by adding a message identifier.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Obtaining a destination address so that a network interface device can write network data without headers directly into host memory.
Narad Charles E. ; Fall Kevin ; MacAvoy Neil ; Shankar Pradip ; Rand Leonard M. ; Hall Jerry J., Packet processing system including a policy engine having a classification unit.
Row Edward J. (Mountain View CA) Boucher Laurence B. (Saratoga CA) Pitts William M. (Los Altos CA) Blightman Stephen E. (San Jose CA), Parallel I/O network file server architecture.
Reddin Timothy G. (Stockport GB3) Walsh David S. (Rossendale GB3) Round Jeremy S. (Warrington GB3), Parallel computer having MAC-relay layer snooped transport header to determine if a message should be routed directly to.
Boucher Laurence B. ; Blightman Stephen E. J. ; Craft Peter K. ; Higgen David A. ; Philbrick Clive M. ; Starr Daryl D., Passing a communication control block from host to a local device such that a message is processed on the device.
Boucher Laurence B. ; Blightman Stephen E. J. ; Craft Peter K. ; Higgen David A. ; Philbrick Clive M. ; Starr Daryl D., Passing a communication control block from host to a local device such that a message is processed on the device.
Laurence B. Boucher ; Stephen E. J. Blightman ; Peter K. Craft ; David A. Higgen ; Clive M. Philbrick ; Daryl D. Starr, Passing a communication control block to a local device such that a message is processed on the device.
Craft, Peter K.; Philbrick, Clive M.; Boucher, Laurence B.; Starr, Daryl D.; Blightman, Stephen E. J.; Higgen, David A., Port aggregation for network connections that are offloaded to network interface devices.
Latif Farrukh A. (Malvern PA) Stevens Michael D. (Paoli PA) Moysey John A. (Malvern PA) Shinkarovsky Michael (Harleysville PA) Nguyen Hung (Downingtown PA) Dale Michele Z. (Audubon PA), Programmable multiple I/O interface controller.
Hausman Richard (Soquel CA) Sherer Paul W. (Sunnyvale CA) Rivers James P. (Sunnyvale CA) Zikmund Cynthia (Boulder Creek CA) Connery Glenn W. (Sunnyvale CA) Strohl Niles E. (Tracy CA) Reid Richard S. , Programmed I/O ethernet adapter with early interrupts for accelerating data transfer.
Seno Shoichiro (Kanagawa-ken JPX) Ideguchi Tetsuo (Kanagawa-ken JPX), Protocol parallel processing apparatus having a plurality of CPUs allocated to process hierarchical protocols.
Craft, Peter K.; Philbrick, Clive M.; Boucher, Laurence B.; Higgen, David A., Protocol processing stack for use with intelligent network interface device.
Craft, Peter K.; Philbrick, Clive M.; Boucher, Laurence B.; Higgen, David A., Protocol processing stack for use with intelligent network interface device.
Peter K. Craft ; Olive M. Philbrick ; Laurence B. Boucher ; David A. Higgen, Protocol processing stack for use with intelligent network interface device.
Beach Robert (Los Altos CA) Bryers Mark (San Jose CA) Cox Casey (Palo Alto CA) Fall Richard (Palo Alto CA) Finn Norman (San Jose CA) Laird Douglas (San Jose CA), Protocol processor.
Blightman,Stephen E. J.; Boucher,Laurence B.; Craft,Peter K.; Higgen,David A.; Philbrick,Clive M.; Starr,Daryl D., Reducing delays associated with inserting a checksum into a network message.
Davis Gordon T. (Boca Raton FL) Landa Robert E. (Boca Raton FL) Mandalia Baiju D. (Boca Raton FL) van den Berg Jan W. (Boca Raton FL) Van Voorhis David C. (Boca Raton FL), Specialized communications processor for layered protocols.
David A. Burns ; Benjamin L. Dagana ; Christopher J. Harrer ; Dung M. Luu ; Todd A. Matters ; Michael S. Miles ; Barry E. Blust ; Thomas J. Schneider ; Thomas V. Connors, Split data path distributed network protocol.
Christenson David A. (Rochester MN), System and method for controlling buffer transmission of data packets by limiting buffered data packets in a communicati.
Redding, Mark E.; Badia, Logan A.; Handa, Sandeep; Sharma, Hemant; Chopra, Sanjay; Duvvoori, Vikram; Ramamoorthy, Shankar; Tripathy, Ajay, System and method for selecting a server in a multiple server license management system.
Sanjay Anand ; Nk Srinivas ; Jameel Hyder ; Kyle E. Brandon, System for ascertaining task off-load capabilities of a device and enabling selected capabilities and when needed selectively and dynamically requesting the device to perform the task.
Yokoyama Tatsuya (Sagamihara JPX) Hirata Tetsuhiko (Yokohama JPX) Mizutani Mika (Tokyo JPX) Takada Osamu (Sagamihara JPX), System for executing high speed communication protocol processing by predicting protocol header of next frame utilizing.
Delp Gary S. ; Leichty Philip L. ; Slane Albert A., System for minimizing latency data reception and handling data packet error if detected while transferring data packet.
Pardillos Jacky (Plaisir FRX), System for network transmission using a communication co-processor comprising a microprocessor to implement protocol lay.
Denton E. Gentry, Jr., System for parsing a packet for conformity with a predetermined protocol using mask and comparison values included in a parsing instruction.
Anand Sanjay ; Brandon Kyle ; Srinavas Nk ; Hyder Jameel, System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed.
Dean Willis ; Jim Howser ; Marty Garrity ; Jack Heneghan, System for selectively routing data via either a network that supports Internet protocol or via satellite transmission network based on size of the data.
Toby D. Bennett ; Donald J. Davis ; Jonathan C. Harris ; Ian D. Miller, System for transmitting and receiving data within a reliable communications protocol by concurrently processing portions of the protocol suite.
Whitney Mark M., System for, and method of, off-loading network transactions from a mainframe to an intelligent input/output device, including off-loading message queuing facilities.
Jolitz William Frederick ; Lawson Matthew Todd ; Jolitz Lynne Greer, TCP/IP network accelerator system and method which identifies classes of packet traffic for predictable protocols.
Philbrick,Clive M.; Boucher,Laurence B.; Blightman,Stephen E. J.; Craft,Peter K.; Higgen,David A.; Starr,Daryl D., TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism.
Laurence B. Boucher ; Stephen E. J. Blightman ; Peter K. Craft ; David A. Higgen ; Clive M. Philbrick ; Daryl D. Starr, TCP/IP offload network interface device.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Transmit fast-path processing on TCP/IP offload network interface device.
Brendel Juergen ; Kring Charles J. ; Liu Zaide ; Marino Christopher C., World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-n.
Ang, Boon Seong; Schlansker, Michael Steven; Schreiber, Robert Samuel; Collard, Jean-Francois; Jouppi, Norman Paul, Command encoding of data to enable high-level functions in computer networks.
Philbrick, Clive M.; Craft, Peter K., Freeing transmit memory on a network interface device prior to receiving an acknowledgment that transmit data has been received by a remote device.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Intelligent network interface device and system for accelerated communication.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Intelligent network interface system and method for accelerated protocol processing.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Intelligent network interface system and method for protocol processing.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Intelligent network interface system and method for protocol processing.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Method and apparatus for distributing network traffic processing on a multiprocessor computer.
Boucher, Laurence B.; Blightman, Stephen E. J.; Craft, Peter K.; Higgen, David A.; Philbrick, Clive M.; Starr, Daryl D., Method and apparatus for processing received network packets on a network interface for a computer.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.