US8542595B2ExpiredUtilityA1

Service processing switch

91
Assignee: HUSSAIN ZAHIDPriority: Jun 4, 2002Filed: Nov 13, 2011Granted: Sep 24, 2013
Est. expiryJun 4, 2022(expired)· nominal 20-yr term from priority
H04L 45/00H04L 2101/604H04L 47/50H04L 63/0272H04L 47/2441H04L 47/125H04L 47/6215H04L 69/22H04L 63/101H04L 63/02H04L 47/2491H04L 47/326H04L 45/586H04L 69/24H04L 45/60H04L 47/2408H04L 63/061H04L 63/0428H04L 63/164H04L 47/623H04L 63/0236H04L 63/062H04L 49/70H04L 61/2503H04L 45/20
91
PatentIndex Score
12
Cited by
287
References
16
Claims

Abstract

Methods and systems for providing IP services in an integrated fashion are provided. According to one embodiment, a load associated with multiple virtual routing processing resources of an IP service generator of a virtual router (VR) based switch is monitored. Packets are load balanced among the virtual routing processing resources. A packet flow cache is maintained with packet flow entries containing information indicative of packet processing actions for established packet flows. Deep packet classification is performed to determine whether a packet is associated with an established packet flow. If so, the packet is directed to one of multiple virtual services processing resources representing application-tailored engines configured to provide network-based IP services including one or more of virtual private network (VPN) processing, firewall processing, Uniform Resource Locator (URL) filtering and anti-virus processing. If the packet is allowed, it is returned to the source virtual routing processing resource for forwarding.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for delivering network-based Internet Protocol (IP) services to a plurality of customers of a service provider, the method comprising:
 monitoring a load associated with a plurality of virtual routing processing resources of an IP service generator of a virtual router (VR) based switch, each of the plurality of virtual routing processing resources representing an application-tailored engine configured to perform packet classification and deep packet inspection; 
 load balancing received packets, by a flow manager of a line interface/network module of the IP service generator, among the plurality of virtual routing processing resources by directing received packets to a selected virtual routing processing resource of the plurality of virtual routing processing resources, the received packets representing service requests from the plurality of customers; 
 maintaining by the plurality of virtual routing processing resources a packet flow cache by setting up packet flow entries associated with each established packet flow, each packet flow entry of the packet flow cache containing information indicative of one or more packet processing actions or packet field manipulations to perform on packets associated with the established packet flow; 
 determining, by the selected virtual routing processing resource, whether a received packet is associated with an established packet flow within the packet flow cache by performing deep packet classification; 
 when an affirmative determination is made, directing, by the selected virtual routing processing resource, the received packet to a virtual services processing resource of a plurality of virtual services processing resources of the IP service generator, each of the plurality of virtual services processing resources representing an application-tailored engine configured to provide network-based IP services including one or more of virtual private network (VPN) processing, firewall processing, Uniform Resource Locator (URL) filtering and anti-virus processing; and 
 if the received packet is not dropped or otherwise blocked as a result of the network-based IP services performed by the virtual services processing resource, the virtual services processing resource returning the received packet to the selected virtual routing processing resource for forwarding. 
 
     
     
       2. The method of  claim 1 , wherein said load balancing is based on a virtual local area network (VLAN) with which the received packet is associated. 
     
     
       3. The method of  claim 1 , wherein said directing received packets to a selected virtual routing processing resource comprises steering the received packets across a switch fabric within the IP service generator. 
     
     
       4. The method of  claim 1 , wherein the VR-based switch comprises a chassis-based switch and wherein the IP service generator is implemented within a blade of a plurality of blades of the chassis-based switch. 
     
     
       5. The method of  claim 4 , wherein each of the plurality of virtual routing processing resources comprises a virtual routing engine (VRE) including at least one central processing unit and random access memory. 
     
     
       6. A system for providing network-based Internet Protocol (IP) services to a plurality of customers of a service provider, comprising:
 a plurality of virtual routing processing resources configured to perform packet classification and deep packet inspection and further configured to maintain a packet flow cache by setting up packet flow entries associated with each established packet flow, each packet flow entry of the packet flow cache containing information indicative of one or more packet processing actions or packet field manipulations to perform on packets associated with the established packet flow; 
 a plurality of virtual services processing resources configured to provide network-based IP services including one or more of virtual private network (VPN) processing, 
 a line interface/network module coupled in communication with the plurality of virtual routing processing resources, the line interface/network module including a flow manager configured to load balance received packets among the plurality of virtual routing processing resources by directing received packets to a selected virtual routing processing resource of the plurality of virtual routing processing resources, the received packets representing service requests from the plurality of customers; 
 wherein the selected virtual routing processing resource determines whether a received packet is associated with an established packet flow within the packet flow cache by performing deep packet classification; 
 wherein responsive to an affirmative determination the selected virtual routing processing resource directs the received packet to a virtual services processing resource of the plurality of virtual services processing resources; and 
 wherein if the received packet is not dropped or otherwise blocked as a result of the network-based IP services performed by the virtual services processing resource, the virtual services processing resource returns the received packet to the selected virtual routing processing resource for forwarding. 
 
     
     
       7. The system of  claim 6 , wherein the flow manager performs load balancing based on a virtual local area network (VLAN) with which the received packet is associated. 
     
     
       8. The system of  claim 6 , further comprising a switch fabric and wherein the selected virtual routing processing resource directs the received packet to the virtual services processing resource by steering the received packets across the switch fabric. 
     
     
       9. The system of  claim 6 , wherein the system is a chassis-based switch and wherein the plurality of virtual routing processing resources, the plurality of virtual service processing resources and the line interface/network module are implemented within a blade of a plurality of blades of the chassis-based switch. 
     
     
       10. The system of  claim 6 , wherein each of the plurality of virtual routing processing resources comprises a virtual routing engine (VRE) including at least one central processing unit and random access memory. 
     
     
       11. The system of  claim 10 , wherein the line interface/network module includes an ingress forwarding manager which maintains a steering table mapping virtual local area networks (VLANs) to one or more VREs of the plurality of VREs. 
     
     
       12. The system of  claim 6 , wherein each of the plurality of virtual services processing resources comprises a virtual services engine (VSE) including at least one central processing unit and random access memory. 
     
     
       13. The system of  claim 12 , wherein at least one of the plurality of VSEs comprises an advanced security engine (ASE). 
     
     
       14. The system of  claim 13 , wherein the ASE comprises a plurality of encryption accelerators, a key accelerator and a security manager configured to load balance and manage security sessions across the one or more encryption accelerators. 
     
     
       15. The system of  claim 6 , wherein the line interface/network module includes an egress forwarding manager which applies priority queuing to egress packets based on DiffServ marking and transmits the egress packets out of the line interface/network module. 
     
     
       16. The method of  claim 4 , wherein each of the plurality of virtual service processing resources comprises a virtual services engine (VSE) including at least one central processing unit and random access memory.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.