Claims
- 1. A computer network system, comprising:
a processor; a plurality of network devices; a device driver; an operating system kernel comprising a multi-packet transmission system for transmitting multiple data packets in a single transmission cycle to a network device coupled to the computer system in a single system call to a data link layer in said operating system kernel.
- 2. The computer system of claim 1, wherein said multi-packet transmission system comprises an array of packet information logic modules for storing information required to access header and payload information in each packet.
- 3. The computer system of claim 2, wherein said multi-packet transmission system further comprises a packet stack header logic module.
- 4. The computer system of claim 3, wherein said multi-packet transmission system further comprises a packet offload logic module for defining device offload types for the multi-packet transmission system.
- 5. The computer network system of claim 4, wherein said multi-packet transmission system further comprises a layer 2 addressing logic module for transmitting said multiple packet data as layer 2 addressing packets.
- 6. The computer network system of claim 2, wherein said packet information logic modules comprise header length information for defining space to set aside in main memory from the beginning of a current packet header to the beginning of the current layers header to enable the multi-packet transmission system to traverse a protocol stack in said network system.
- 7. The computer network system of claim 6, wherein said packet information logic modules further comprise packet tail length information for defining space set aside said main memory, from the end of a current layer header to the end of the space set aside for the current packet header.
- 8. The computer network system of claim 7, wherein said packet information logic modules further comprise packet header offset information for defining header offset information relative to the base of the header buffer for calculating header input/output address posted to said network device for the current packet to be fetched by said network device and transmitted.
- 9. The computer network system of claim 8, wherein said packet information logic modules further comprise packet header length information for defining a total length of all headers for a particular packet.
- 10. The computer network system of claim 9, wherein said packet information logic modules further comprise offload offset information for defining a starting offset for a list of per packet offloads.
- 11. The computer network system of claim 4, wherein said packet offload logic modules comprise an offload type for defining a parameter type of an offload a driver and a hardware device is expected to provide to said multi-packet transmission system.
- 12. An operating system kernel in a computer network, comprising:
a network subsystem; a plurality of network devices; a transport module for processing a multi-packet data block in a single transport cycle; and a multi-packet transmission module for transmitting said multi-packet data block as a single data transmission block in a single system call from said operating system kernel to a requesting one of said plurality of network devices.
- 13. The operating system kernel of claim 12, wherein said multi-packet transmission module comprises a contiguous block of a plurality of header information with an associating payload data information.
- 14. The operating system kernel of claim 13, wherein said multi-packet transmission module further comprises a packet offload logic module for defining device offload types for the multi-packet transmission system.
- 15. The operating system kernel of claim 14, wherein said multi-packet transmission module further comprises header length information for defining space to set aside in main memory from the beginning of a current packet header to the beginning of the current layers header to enable the multi-packet transmission system to traverse a protocol stack in said network system.
- 16. The operating system kernel of claim 15, wherein said packet information logic module further comprises packet tail length information for defining a space set aside in said main memory from the end of a current layer header to the end of the space set aside for the current packet header.
- 17. The operating system kernel of claim 16, wherein said packet information logic module further comprises packet header offset information for defining header offset information relative to the base of the header buffer for calculating header input/output address posted to said network device for the current packet to be fetched by said network device and transmitted.
- 18. The operating system kernel of claim 17, wherein said packet information logic module further comprises packet header length information for defining a total length of all headers for a particular packet.
- 19. The operating system kernel of claim 18, wherein said packet information logic module further comprises offload offset information for defining a starting offset for a list of per packet offloads.
- 20. The operating system kernel of claim 19, wherein said packet offload logic module comprises an offload type for defining the parameter type of an offload that a driver and a hardware device is expected to provide to said multi-packet transmission system.
- 21. A computer implemented multi-data request transmission system comprising:
data request primitive structure logic comprising information for transmitting header and payload information associated with a multi-packet data transmission request into layer 2 addressing packets; payload data logic for providing payload information associated with each packet in said multi-packet data transmission request; and packet header information logic for providing header information associated with each of said multi-packet data transmission requests.
- 22. A system as described in claim 21 wherein said multi-data request transmission system further comprises a data buffer for storing a plurality of packets of data transmitted in a single transmission cycle to said network devices.
- 23. A system as described in claim 22 wherein said data is a kernel data structure of a computer operating system.
- 24. A system as described in claim 23 wherein application programs in said computer system are aware of said data buffer for said data structure.
- 25. A method of transmitting a multiple packets in a computer system network to a network device in a single call to a data link layer in said computer network, comprising:
allocating a master block for a data payload; allocating header information and associated block data; generating header-payload pairs by linking said header information to a payload data; allocating a multi-data transmit descriptor and an associating memory block; generating a contiguous data block corresponding to said multiple packets; and transmitting said multi-packet data block to said device driver.
- 26. The method of claim 25, wherein said transmitting said multi-packet data block comprises generating duplicate network protocol stack messages to said network device.
- 27. The method of claim 26, wherein said transmitting said multi-packet data block further comprises locking down said header and payload information for a direct memory access in said computer network.
- 28. The method of claim 27, wherein said transmitting said multi-packet data block further comprises updating said network protocol stack with said header-payload pairs until said multi-data request is completely transmitted.
CROSS REFERENCE TO RELATED APPLICATION
[0001] This is a continuation-in-part of Masputra et al., U.S. patent application Ser. No.: 10/170,919, filed Jun. 12, 2002, attorney docket No.: SUN-P7826, entitled “A SYSTEM AND METHOD FOR A MULTI-DATA NETWORK LAYER TRANSMIT INTERFACE”. To the extent not repeated herein, the contents of Masputra et al., are incorporated herein by reference.
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10170919 |
Jun 2002 |
US |
Child |
10434810 |
May 2003 |
US |