Patentable/Patents/US-6016513
US-6016513

Method of preventing packet loss during transfers of data packets between a network interface card and an operating system of a computer

PublishedJanuary 18, 2000
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Patent Claims
26 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. In a computer system, a method of preventing packet loss during transfer of a plurality of data packets between a network interface card and a host operating system of the computer system, the method comprising the steps of: a) transferring a burst of the data packets from the network interface card to a buffer controlled by the operating system, wherein the burst includes at most a maximum number of data packets the buffer is capable of receiving without packet loss; and b) sending a signal to the operating system, the signal falsely indicating to the operating system that all of the plurality of the data packets have been transferred, wherein the signal causes the operating system to flush the buffer such that a next burst of the data packets can be received without packet loss.

2

2. The method according to claim 1 further comprising the step of: c) repeating step (a) and step (b) until all of the plurality of data packets are transferred.

3

3. The method according to claim 1 further comprising the step of: d) scheduling a future hardware interrupt after step (a), wherein the future hardware interrupt triggers the operating system to repeat step (a), step (d) and step (b) until all of the plurality of data packets are transferred.

4

4. The method according to claim 1 wherein the operating system is compatible with x86-family microprocessors.

5

5. The method according to claim 4 wherein the buffer is controlled by an NDIS wrapper of the operating system.

6

6. The method according to claim 1 wherein the signal is generated by an NDIS routine NdisMIndicateReceiveComplete.

7

7. In a computer system, a method of preventing packet loss when data packets are transferred from a network interface card to a host operating system, the method comprising the steps of: a) receiving a plurality of data packets from a network; b) transferring a burst of the data packets to the host operating system, wherein the burst includes fewer data packets than the plurality, further wherein the burst includes at most a maximum number of data packets the operating system can receive without packet loss; c) processing the burst of the data packets; d) sending a signal to the host operating system, the signal falsely indicating to the host operating system that the processed data packets constitute all of the data packets received from the network, wherein the signal enables the host operating system to process additional data packets without packet loss; and e) scheduling a future transaction, wherein a next burst of the data packets will be received by the host operating system at the future transaction.

8

8. The method according to claim 7 further comprising the step of: f) repeating step (b) through step (e) until the plurality of data packets are processed.

9

9. The method according to claim 7 further comprising the step of: g) temporarily storing the processed data packets within a buffer controlled by an NDIS wrapper of the host operating system.

10

10. The method according to claim 9 further comprising the step of: h) flushing the buffer after step (d) such that the buffer is available to receive the next burst of data packets.

11

11. The method according to claim 10 wherein the signal triggers the host operating system to flush the buffer.

12

12. The method according to claim 7 wherein the signal is generated by an NDIS routine NdisMIndicateReceiveComplete.

13

13. The method according to claim 7 wherein the operating system is compatible with x86-family microprocessors, further wherein the maximum number is eight.

14

14. In a computer system, a method of preventing packet loss when data packets are transferred from a network interface card to a host operating system, the method comprising the steps of: a) receiving a plurality of data packets from a network; b) transferring a burst of the data packets to the host operating system, wherein the burst includes fewer data packets than the plurality, further wherein the burst includes at most a maximum number of data packets the host operating system can receive without packet loss; c) processing the burst of the data packets; d) sending a signal to the host operating system, the signal falsely indicating to the host operating system that the processed data packets constitute all of the data packets received from the network, wherein the signal enables the host operating system to process additional data packets without packet loss; and e) processing a next burst of the data packets after step (d).

15

15. The method according to claim 14 further comprising the step of: f) repeating step (a) through step (d) until the plurality of data packets are processed.

16

16. The method according to claim 14 further comprising the step of: g) temporarily storing the processed data packets within a buffer controlled by an NDIS wrapper of the host operating system.

17

17. The method according to claim 16 further comprising the step of: g) flushing the buffer after step (d) such that the buffer is available to receive the next burst of the data packets.

18

18. The method according to claim 14 wherein the signal is generated by an NDIS routine NdisMIndicateReceiveComplete.

19

19. The method according to claim 18 wherein the signal triggers the NDIS wrapper to flush the buffer.

20

20. The method according to claim 18 wherein the operating system is compatible with x86-family microprocessors, further wherein the maximum number is eight.

21

21. A computer-usable medium having computer-readable program code embodied-therein for causing a computer to perform the steps of: a) receiving a plurality of data packets from a network; b) transferring a burst of the data packets to a host operating system, wherein the burst includes fewer data packets than the plurality, further wherein the burst includes at most a maximum number of data packets the operating system can receive without packet loss; c) processing the burst of the data packets; d) falsely indicating to the host operating system that the burst of the data packets constitute all of the data packets received from the network; and e) repeating step (b) through step (d) until all of the data packets.

22

22. The computer-usable medium as recited in claim 21 having computer-readable program code for causing the computer to further perform the steps of: f) scheduling a future transaction, wherein a next burst of the data packets are transferred to the operating system at the future transaction.

23

23. The computer-usable medium as recited in claim 21 having computer-readable program code for causing the computer to further perform the steps of: g) temporarily storing the processed data packets within a buffer controlled by an NDIS wrapper of the host operating system.

24

24. The computer-usable medium as recited in claim 23 having computer-readable program code for causing the computer to further perform the steps of: h) flushing the buffer after step (d) such that the buffer is available to receive the next burst of data packets.

25

25. The computer-usable medium as recited in claim 24 wherein the buffer is flushed by an NDIS routine NdisMIndicateReceiveComplete.

26

26. The method according to claim 25 wherein the operating system is compatible with x86-family microprocessors, further wherein the maximum number is eight.

Detailed Description

Complete technical specification and implementation details from the patent document.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

Unknown

Publication Date

January 18, 2000

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Method of preventing packet loss during transfers of data packets between a network interface card and an operating system of a computer” (US-6016513). https://patentable.app/patents/US-6016513

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.