NETWORK SERVICE SLOTTING
First Claim
1. A computer-implemented method of processing a first packet using an ordered sequence of services, the first packet having a source, a destination, and a type, the method comprising:
- determining the ordered sequence of services for processing the packet, the ordered sequence including a first service and a second service;
storing state information for the first packet associated with the first service;
preparing and forwarding the first packet to the first service;
receiving a first processed packet from the first service in response to the forwarding of the first packet to the first service;
identifying the first processed packet by comparing the first processed packet with the stored state information associated with the first service;
storing state information for the first processed packet associated with the second service;
preparing and forwarding the first processed packet to the second service;
receiving a second processed packet from the second service in response to the forwarding of the first processed packet to the second service;
identifying the second processed packet by comparing the second processed packet with the stored state information associated with the second service; and
preparing and forwarding to the second processed packet to the destination.
2 Assignments
0 Petitions
Accused Products
Abstract
Exemplary methods, apparatuses, and systems of packet processing utilize an ordered sequence of packet processing services to process a packet having a destination. The packet is a native, non-proprietary network packet that uses a standard network protocol and standard packet format. The packet processing services include a plurality of physical and/or virtual services. The ordered sequence is determined by applying one or more policy rules. A virtual service insertion platform manages routing of the packet to each service in the ordered sequence of services until all services have processed the packet, then the packet is forwarded to the packet destination.
-
Citations
21 Claims
-
1. A computer-implemented method of processing a first packet using an ordered sequence of services, the first packet having a source, a destination, and a type, the method comprising:
-
determining the ordered sequence of services for processing the packet, the ordered sequence including a first service and a second service; storing state information for the first packet associated with the first service; preparing and forwarding the first packet to the first service; receiving a first processed packet from the first service in response to the forwarding of the first packet to the first service; identifying the first processed packet by comparing the first processed packet with the stored state information associated with the first service; storing state information for the first processed packet associated with the second service; preparing and forwarding the first processed packet to the second service; receiving a second processed packet from the second service in response to the forwarding of the first processed packet to the second service; identifying the second processed packet by comparing the second processed packet with the stored state information associated with the second service; and preparing and forwarding to the second processed packet to the destination. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium programmed with executable instructions that, when executed, implement a method of processing a first packet using an ordered sequence of services, the first packet having a source, a destination, and a type, the method comprising:
-
determining the ordered sequence of services for processing the packet, the ordered sequence including a first service and a second service; storing state information for the first packet associated with the first service; preparing and forwarding the first packet to the first service; receiving a first processed packet from the first service in response to the forwarding of the first packet to the first service; identifying the first processed packet by comparing the first processed packet with the stored state information associated with the first service; storing state information for the first processed packet associated with the second service; preparing and forwarding the first processed packet to the second service; receiving a second processed packet from the second service in response to the forwarding of the first processed packet to the second service; identifying the second processed packet by comparing the second processed packet with the stored state information associated with the second service; and preparing and forwarding to the second processed packet to the destination. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system for processing a packet, comprising:
-
a processing device programmed with executable instructions that, when executed, perform a method of processing a first packet using an ordered sequence of services, the first packet having a source, a destination, and a type, the method comprising; determining the ordered sequence of services for processing the packet, the ordered sequence including a first service and a second service; storing state information for the first packet associated with the first service; preparing and forwarding the first packet to the first service; receiving a first processed packet from the first service in response to the forwarding of the first packet to the first service; identifying the first processed packet by comparing the first processed packet with the stored state information associated with the first service; storing state information for the first processed packet associated with the second service; preparing and forwarding the first processed packet to the second service; receiving a second processed packet from the second service in response to the forwarding of the first processed packet to the second service; identifying the second processed packet by comparing the second processed packet with the stored state information associated with the second service; and preparing and forwarding to the second processed packet to the destination. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification