×

Method and system for processing network data packets

  • US 7,515,612 B1
  • Filed: 07/15/2003
  • Issued: 04/07/2009
  • Est. Priority Date: 07/19/2002
  • Status: Active Grant
First Claim
Patent Images

1. A method for transmitting Internet Protocol (IP) datagrams from a host system via a hardware offload engine that is used for completely offloading transmission control protocol (TCP)/IP protocol stack processing from the host system, comprising:

  • (a)creating an input/output control block (“

    IOCB”

    ) with a plurality of host memory addresses for a memory location within a host memory storing host data for transmission and a host memory address of a network control block (“

    NCB”

    ), the NCB being used for building network protocol headers,(b) sending the IOCB to the hardware offload engine;

    wherein the host sends the IOCB to an outbound processor of the hardware offload engine;

    (c) accessing the NCB stored at the host memory;

    wherein the outbound processor of the hardware offload engine reads the NCB from host memory using the IOCB;

    (d) creating an IP header and media access control (MAC) level protocol header for a single IP packet, if a datagram can fit into the single IP packet;

    wherein the outbound processor, and not the host system, builds the IP and MAC header based on NCB fields;

    (e) transmitting the datagram from step (d);

    wherein the hardware offload engine transmits the datagram as a single IP packet;

    (f) if a datagram size is greater than a certain size, then generating a plurality of IP packets for transmitting the datagram, where each IP packet is a fragmented IP datagram;

    wherein the outbound processor of the hardware offload engine generates the plurality of IP packets, sets an IP packet length field in a last of the plurality of IP packets, such that the IP packet length field in the last IP packet is different from a IP packet length field value in the other plurality of IP packets; and

    (g) setting a flag in each fragmented IP datagram for indicating which fragmented IP datagram is transmitted by the hardware offload engine.

View all claims
  • 7 Assignments
Timeline View
Assignment View
    ×
    ×