Backup service managers for providing reliable network services in a distributed environment
First Claim
1. A fault tolerant method of providing a network service including:
- receiving a first criteria specifying a first set of flows from a first service manager at a forwarding agent;
storing the first criteria on the forwarding agent;
receiving a second criteria specifying a second set of flows from a second service manager at the forwarding agent wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
storing the second criteria on the forwarding agent;
receiving a packet belonging to a flow that is included in the first set and the second set;
determining that the packet matches the first set; and
forwarding the packet to the first service managers, wherein the second service manager is operable to function as a primary service manager or a backup service manager.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method are disclosed for providing a network service. A first criteria specifying a first set of flows from a first service manager is received at a forwarding agent. The first criteria specifies an expiration time interval. The first criteria is stored on the forwarding agent. A second criteria is received that specifies a second set of flows from a second service manager at the forwarding agent. The second set of flows includes flows that are in the first set of flows and the second criteria is designated as a lower priority criteria. The second criteria is stored on the forwarding agent. The first criteria is deleted from the forwarding agent upon the expiration of the expiration time interval. A packet is received that belongs to a flow that is included in the first set and the second set. It is determined that the packet matches the second set ant the packet is forwarded to the second service manager.
-
Citations
16 Claims
-
1. A fault tolerant method of providing a network service including:
-
receiving a first criteria specifying a first set of flows from a first service manager at a forwarding agent;
storing the first criteria on the forwarding agent;
receiving a second criteria specifying a second set of flows from a second service manager at the forwarding agent wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
storing the second criteria on the forwarding agent;
receiving a packet belonging to a flow that is included in the first set and the second set;
determining that the packet matches the first set; and
forwarding the packet to the first service managers, wherein the second service manager is operable to function as a primary service manager or a backup service manager.
-
-
2. A fault tolerant method of providing a network service including:
-
receiving a first criteria specifying a first set of flows from a first service manager at a forwarding agent wherein the first criteria specifies an expiration time interval;
storing the first criteria on the forwarding agent;
receiving a second criteria specifying a second set of flows from a second service manager at the forwarding agent wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
storing the second criteria on the forwarding agent;
deleting the first criteria from the forwarding agent upon the expiration of the expiration time interval;
receiving a packet belonging to a flow that is included in the first set and the second set;
determining that the packet matches the second set; and
forwarding the packet to the second service manager. - View Dependent Claims (3, 4, 5)
-
-
6. A forwarding agent configured to provide a network service according to instructions from a service manager comprising:
-
a service manager interface operative to receive a first criteria specifying a first set of flows from a first service manager to wherein the first criteria specifies an expiration time interval and to receive a second criteria specifying a second set of flows from a second service manager wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
a memory that is configured to store the first criteria and the second criteria;
a processor that is operative to check the stored first criteria and to delete the stored first criteria upon the expiration of the expiration time interval, wherein the service manager interface is further operable to forward a packet to the first service manager in the event that the packet matches the first criteria and to forward the packet to the second service manager in the event that the packet matches the second criteria. - View Dependent Claims (7, 8, 9)
a packet interface that is operative to receive a packet belonging to a flow that is included in the first set and the second set;
a processor that is operative to determine that the packet matches the first criteria specifying the first set of flows in the event that the first criteria has not been deleted and to determine that the packet matches the second criteria specifying the second set of flows in the event that the first criteria has been deleted.
-
-
8. A forwarding agent as recited in claim 7 further including:
-
a packet interface that is operative to receive a packet belonging to a flow that is included in the first set and the second set;
a processor that is operative to determine that the packet matches the first criteria specifying the first set of flows in the event that the first criteria has not been deleted and to determine that the packet matches the second criteria specifying the second set of flows in the event that the first criteria has been deleted.
-
-
9. A forwarding agent as recited in claim 8 wherein the message that causes the expiration time interval to expire immediately is a copy of the first criteria specifying an expiration time interval of zero.
-
10. A redundant service manager system configured to provide instructions to a forwarding agent comprising:
-
a primary service manager configured to send a first criteria specifying a first set of flows to a forwarding agent wherein the first criteria specifies an expiration time interval so that the first criteria may be deleted from the forwarding agent upon the expiration of the expiration time interval, wherein the primary service manager includes a processor for processing packets belonging to the first set;
a backup service manager configured to send a second criteria specifying a second set of flows to the forwarding agent wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria. - View Dependent Claims (11, 12, 13)
-
-
14. A computer program product embodied in a computer readable medium for providing a network service in a fault tolerant manner comprising computer instructions for:
-
sending a first criteria specifying a first set of flows from a first service manager to a forwarding agent;
storing the first criteria on the forwarding agent;
sending a second criteria specifying a second set of flows from a second service manager to the forwarding agent wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
storing the second criteria on the forwarding agent;
receiving a packet belonging to a flow that is included in the first set and the second set;
determining that the packet matches the first set; and
forwarding the packet to the first service manager, wherein the second service manager is operable to function as a primary service manager or a backup service manager.
-
-
15. A computer program product embodied in a computer readable medium for providing a network service in a fault tolerant manner comprising computer instructions for:
-
sending a first criteria specifying a first set of flows from a first service manager to a forwarding agent wherein the first criteria specifies an expiration time interval;
storing the first criteria on the forwarding agent;
sending a second criteria specifying a second set of flows from a second service manager to the forwarding agent wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
storing the second criteria on the forwarding agent;
deleting the first criteria from the forwarding agent upon the expiration of the expiration time interval;
receiving a packet belonging to a flow that is included in the first set and the second set;
determining that the packet matches the second set; and
forwarding the packet to the second service manager, wherein the second service manager is operable to function as a primary service manager or a backup service manager.
-
-
16. A computer program product embodied in a computer readable medium for providing a network service according to instructions from a service manager comprising computer instructions for:
-
receiving a first criteria specifying a first set of flows from a first service manager to wherein the first criteria specifies an expiration time interval and to receive a second criteria specifying a second set of flows from a second service manager wherein the second set of flows includes flows that are in the first set of flows and wherein the second criteria is designated as a lower priority criteria;
storing the first criteria and the second criteria; and
checking the stored first criteria and to delete the stored first criteria upon the expiration of the expiration time interval, wherein the second service manager is operable to function as a primary service manager or a backup service manager.
-
Specification