IP Library › Granted Patent US 9,350,702
Granted Patent B2
US 9,350,702 · App. 12/707,046 · Granted May 24, 2016

Virtual insertion into a network

Inventor: Robert L. Faulk, Jr. (Roseville, CA)
Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
H04L63/02H04L29/06
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 9,350,702
App. No.
12/707,046
Filed
Feb 17, 2010
Granted
May 24, 2016
Kind
B2
Examiner
MAUNG, ZARNI
Art Unit
2451
USPC
709/250
Abstract

A network appliance is virtually inserted in a data path within a network. Packet data that matches a criteria is intercepted at a logical point within the data path. The intercepted packet data is forwarded to an application running on the virtually inserted network appliance.

Claims (46)

1. A method, comprising:

virtually inserting, by a processor, a network appliance in any one of a plurality of logical points within a data path of a network, including defining a data tap that describes one of the plurality of logical points within the data path to intercept data and defining a first application path between the data tap and the network appliance, wherein the network appliance is virtually inserted into a location in the data path of the network without physically connecting the network appliance into the location in the data path;

intercepting, by the processor, packet data at the described logical point within the data path of the network when the packet data matches a criteria; and

forwarding, by forwarding circuitry, the intercepted packet data to a first application running on the network appliance.

2. The method of claim 1 , wherein virtually inserting the network appliance in the data path further comprises:

binding the first application path to the data tap.

3. The method of claim 2 , further comprising:

defining a second application path between a second application running on the network appliance and the data tap; and

binding the first application path to the second application path.

4. The method of claim 1 , further comprising:

returning the intercepted packet data from the network appliance to the data path in a pre-intercepted format.

5. The method of claim 1 , wherein intercepting packet data comprises:

intercepting the packet data based on a priority of the packet data.

6. The method of claim 1 , wherein the criteria for intercepting packet data includes whether packet data is traveling to or from an agent of a switch.

7. A network device, comprising:

a virtual insertion module to virtually insert a network appliance into any one of a plurality of logical points within a data path of a network, including a data tap descriptor module to define a data tap that describes one of the plurality of logical points in the data path for intercepting data packets in a network, and an application path descriptor module to define a first application path between the data tap and the network appliance;

an interception module to intercept data packets at the described logical point in the data path of the network based on an interception criteria;

forwarding circuitry to forward the intercepted data packets to the network appliance; and

a processor to implement the data tap descriptor and the application path descriptor module of the virtual insertion module, and the interception module.

8. The network device of claim 7 , wherein the data tap is dynamically updated with an updated interception criteria.

9. The network device of claim 7 , wherein the data tap descriptor module is further to:

define an ingress data tap to intercept a pre-routed form of a packet and an egress data tap to intercept a post-routed form of a packet.

10. The network device of claim 9 , wherein the data tap descriptor module is further to prevent an intercepted packet or a portion of an intercepted packet from being copied to a location other than the network appliance.

11. The network device of claim 7 , further comprising:

a re-interception prevention module to prevent a previously intercepted data packet from being re-intercepted by the data tap.

12. The network device of claim 7 , further comprising an injection module to return the intercepted data packets from the network appliance to the data path at the data tap.

13. A non-transitory computer-readable storage medium containing instructions that, when executed, cause a computer to:

virtually insert a network appliance in any one of a plurality of logical points within a data path of a network, including:

define a data tap that describes one of the plurality of logical points in the data path for intercepting data packets in the network;

define a first application path between the network appliance and the data tap; and

bind the first application path to the data tap.

14. The non-transitory computer-readable storage medium of claim 13 , comprising further instructions that cause the computer to:

intercept data packets at the described logical point in the data path based on an interception criteria; and

route the intercepted data packets to the network appliance.

15. The non-transitory computer-readable storage medium of claim 14 , comprising further instructions that cause the computer to:

return the intercepted data packets from the network appliance to the data path of the network in a pre-interception format.

16. The non-transitory computer-readable storage medium of claim 13 , comprising further instructions that cause the computer to:

prevent the intercepted data packets or a portion of the intercepted data packets from being copied to a location other than the network appliance.

17. The non-transitory computer-readable storage medium of claim 13 , wherein the instructions that cause the binding are implemented, at least in part, via one or more of a management information base (MIB) and a policy-based forwarding command line interface (CLI) syntax.

18. The non-transitory computer-readable storage medium of claim 13 , comprising further instructions to cause the computer to:

modify the data tap to describe a different logical point in the data path for intercepting data packets;

modify the first application path to define a new application path between the network appliance and the modified data tap.

19. The non-transitory computer-readable storage medium of claim 13 , wherein the instructions to define the application path comprise one or more of a direct memory access (DMA) instruction, a queuing instruction, a destination port, a destination virtual machine (VM), a packet encapsulation type.

20. The non-transitory computer-readable storage medium of claim 13 , further comprising instructions to cause the computer to:

define a second application path between a second application running on the network appliance and the data tap; and

bind the first application path to the second application path.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2010
From: FAULK, ROBERT L., JR
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 023961/0495 →
Continuity (1)
Related Publication 20110202675A1 · Aug 18, 2011