IP Library Granted Patent US 8,050,266
Granted Patent B2
US 8,050,266 · App. 11/489,926 · Granted Nov 1, 2011

Low impact network debugging

Assignee: Oracle America, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,050,266
App. No.
11/489,926
Granted
Nov 1, 2011
Kind
B2
Abstract

A method for debugging network connections that involves receiving a packet for a first destination by a network interface card (NIC), classifying the packet, sending the packet to a first receive ring associated with the NIC, and sending the packet from the first receive ring to a first virtual NIC, where the first virtual NIC is associated with a second destination, and where the second destination is used to debug the first destination.

Claims (77)

1. A method for debugging network connections, comprising:

receiving a packet for a first destination by a network interface card (NIC);

classifying the packet;

sending, based on the classifying, the packet to a first receive ring associated with the NIC; and

sending the packet from the first receive ring to a first virtual NIC,

wherein the first virtual NIC is associated with a second destination, and

wherein the second destination comprises a debugging service, which when executed, is configured to debug the first destination.

2. The method of claim 1 , further comprising:

creating a copy of the packet after classification;

sending the copy of the packet to a second receive ring associated with the NIC; and

sending the copy of the packet from the second receive ring to a second virtual NIC, wherein the second virtual NIC is associated with the first destination.

3. The method of claim 1 , further comprising:

recording a Transmission Control Protocol (TCP) connection state associated with the packet when the packet is received.

4. The method of claim 1 , further comprising:

sending the packet from the first virtual NIC to a debug virtual network stack, wherein the debug virtual network stack is associated with the second destination.

5. A system, comprising:

a host, comprising:

a first destination;

a second destination, wherein the second destination comprises a debugging service, which when executed, is configured to debug the first destination;

a first virtual NIC associated with the second destination; and

a network interface card (NIC), operatively connected to the host, comprising a first receive ring,

wherein the NIC is configured to:

receive a first packet for the first destination;

classify the first packet;

send, based on the classifying, the first packet to the first receive ring; and

send the first packet from the first receive ring to the first virtual NIC.

6. The system of claim 5 , wherein the NIC further comprises a second receive ring, wherein the host further comprises a second virtual NIC, and wherein the NIC is further configured to:

create a copy of the first packet after classification;

send the copy of the first packet to the second receive ring; and

send the copy of the first packet from the second receive ring to the second virtual NIC,

wherein the second virtual NIC is associated with the first destination.

7. The system of claim 5 , further comprising:

an offline storage,

wherein the host is further configured to:

receive a second packet;

classify the second packet;

send, based on the classifying, the second packet to the first receive ring; and

write the second packet from the first virtual NIC to the offline storage.

8. The system of claim 5 , further comprising:

a test machine,

wherein the host is further configured to:

receive a second packet;

classify the second packet;

send, based on the classifying, the second packet to the first receive ring; and

pass the second packet from the first virtual NIC to the test machine.

9. The system of claim 5 , wherein the host further comprises:

a processor, wherein the host is further configured to process the first packet from the virtual NIC using the processor in real-time.

10. The system of claim 5 , wherein the host is further configured to:

record a Transmission Control Protocol (TCP) connection state associated with the first packet when the first packet is received.

11. The system of claim 5 , wherein the host is further configured to:

pass the first packet from the virtual NIC to a debug virtual network stack, wherein the debug virtual network stack is associated with the second destination.

12. A non-transitory computer usable medium having computer readable program code embodied therein for causing a computer system to execute a method for debugging network connections, the method comprising:

receiving a first packet for a first destination by a network interface card (NIC);

classifying the first packet;

sending, based on the classifying, the first packet to a first receive ring associated with the NIC; and

sending the first packet from the first receive ring to a first virtual NIC,

wherein the first virtual NIC is associated with a second destination, and

wherein the second destination comprises a debugging service, which when executed, is configured to debug the first destination.

13. The non-transitory computer usable medium of claim 12 , the method further comprising:

creating a copy of the first packet after classification;

sending the copy of the first packet to a second receive ring associated with the NIC; and

sending the copy of the first packet from the second receive ring to a second virtual NIC,

wherein the second virtual NIC is associated with the first destination.

14. The non-transitory computer usable medium of claim 12 , the method further comprising:

recording a Transmission Control Protocol (TCP) connection state associated with the first packet when the packet is received.

15. The non-transitory computer usable medium of claim 12 , the method further comprising:

receiving a second packet for the first destination by the NIC;

classifying the second packet;

sending, based on the classifying, the second packet to the first receive ring associated with the NIC; and

writing the second packet from the first virtual NIC to an offline storage.

16. The non-transitory computer usable medium of claim 12 , the method further comprising:

receiving a second packet for the first destination by the NIC;

classifying the second packet;

sending, based on the classifying, the second packet to the first receive ring associated with the NIC; and

sending the second packet from the first virtual NIC to a test machine.

17. The non-transitory computer usable medium of claim 12 , the method further comprising:

processing the packet from the first virtual NIC using a processor in real-time.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0134 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2006
From: TRIPATHI, SUNAY; CURTIS, BRUCE W.; CHU, HSIAO-KENG JERRY
To: SUN MICROSYSTEMS, INC.
Reel/Frame 018261/0119 →
Continuity (1)
Related Publication 20080043632A1 · Feb 21, 2008