IP Library Granted Patent US 8,243,742
Granted Patent B2
US 8,243,742 · App. 12/202,622 · Granted Aug 14, 2012

System and method for enforcement of service level agreements and policies across geographical domains

Assignee: Oracle International Corporation
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,243,742
App. No.
12/202,622
Granted
Aug 14, 2012
Kind
B2
Abstract

A service access gateway is described that provides enforcement of service level agreements across geographically remote domains. Each domain can comprise an access tier and a network tier that can be scaled by adding or removing server nodes. At the network tier level, a master node can be selected in each domain in order to maintain budget state information for the domain. Additionally, a global master can be elected in order to maintain the state information across multiple domains such that the service level agreements can be enforced in a synchronized manner. A geographical configuration service can also be implemented to generate alarms in cases where service level agreements across the multiple sites are not identical.

Claims (47)

1. A system for providing enforcement of service level agreements across geographical domains, said system comprising:

a first domain cluster of computer nodes, said first domain cluster having a first master hub node that enforces at least one service level agreement across the first domain cluster; and

a second domain cluster of computer nodes, said second domain cluster being geographically remote with respect to the first domain cluster, said second domain cluster including a second master hub node that enforces the service level agreement across the second domain cluster;

wherein each of said first domain cluster and said second domain cluster further includes

a stateless access layer cluster, comprising a plurality of access tier servers, that receives and forwards requests,

a stateful network layer cluster, comprising a plurality of network tier servers, that receives the requests from the access tier, wherein the internal state information is synchronized between the network tiers of said first cluster and said second cluster, and

a firewall separating the stateless access layer cluster from the stateful network layer cluster;

wherein upon processing requests, each computer node in the first domain cluster and in the second domain cluster updates a local traffic count that is based on a number of said requests processed; and

wherein, upon expiration of a time interval, the first master hub node updates a cluster-wide traffic count for the first domain cluster and the second master hub node updates the cluster-wide traffic count for the second domain cluster; and

wherein one of said first master hub node and the second master hub node is elected to be a global master that maintains budget state information synchronized between both the first domain cluster and the second domain cluster, and wherein the global master uniformly enforces the service level agreement across both the first domain cluster and the second domain cluster according to both the cluster-wide traffic count in the first domain cluster and the cluster-wide traffic count in the second domain cluster.

2. The system of claim 1 wherein the global master maintains state information across both the first cluster and the second cluster.

3. The system of claim 1 wherein the service level agreement is enforced in the first cluster and the second cluster by a singleton budget service.

4. The system of claim 1 wherein enforcing the service level agreement further includes:

transmitting service level agreement quota counters and service level agreement request limits between the first master hub node and the second master hub node.

5. The system of claim 1 , further comprising:

a database that stores state information that spans longer than a specified period of time.

6. The system of claim 1 , further comprising:

a connection established between the first cluster and the second cluster.

7. The system of claim 1 , further comprising:

a geographical configuration service that generates an alarm if the service level agreement is not identical between the first cluster and the second cluster.

8. The system of claim 1 wherein each of the first cluster and the second cluster is a network gateway deployment that receives requests from client applications that provide telecommunications services to one or more subscribers.

9. The system of claim 1 wherein the service level agreement is associated with at least one of: a service provider, an application and a network node.

10. A method for providing enforcement of service level agreements across geographical domains, said method comprising:

maintaining a first domain cluster of computer nodes that process incoming requests;

maintaining a second domain cluster of computer nodes that process incoming requests, said second domain cluster being geographically remote with respect to the first domain cluster of computer nodes, wherein each computer node in the first domain cluster and in the second domain cluster updates a local traffic count that is based on a number of said requests processed;

wherein each of said first domain cluster and said second domain cluster further includes

a stateless access layer cluster, comprising a plurality of access tier servers, that receives and forwards requests,

a stateful network layer cluster, comprising a plurality of network tier servers, that receives the requests from the access tier, wherein the internal state information is synchronized between the network tiers of said first cluster and said second cluster, and

a firewall separating the stateless access layer cluster from the stateful network layer cluster;

designating a first local master node in the first domain cluster and a second local master node in the second domain cluster, wherein, upon expiration of a time interval, the first local master node updates a cluster-wide traffic count for the first domain cluster and the second local master hub node updates the cluster-wide traffic count for the second domain cluster;

electing one of said first local master node and the second local master node to be a global master node that maintains budget state information synchronized between both the first domain cluster and the second domain cluster; and

uniformly enforcing, by said global master node, the service level agreement across both the first domain cluster and the second domain cluster according to both the cluster-wide traffic count in the first domain cluster and the cluster-wide traffic count in the second domain cluster.

11. The method of claim 10 wherein the service level agreement is enforced across the clusters by a singleton budget service that is executing on the global master node running in one of the clusters.

12. The method of claim 10 wherein enforcing the service level agreement further includes:

transmitting service level agreement quota counters and service level agreement request limits between the local master node and the global master node.

13. The method of claim 10 , further comprising:

persisting, into a database, the internal state information that spans longer than a specified length of time.

14. The method of claim 10 wherein each of said first cluster and said second cluster further includes:

a stateless access tier that receives and forwards requests; and

a stateful network tier that receives the requests from the access tier, wherein the internal state information is replicated between the network tiers of said first cluster and said second cluster.

15. The method of claim 10 , further comprising:

establishing a connection between the first cluster and the second cluster.

16. The method of claim 10 , further comprising:

generating an alarm if the service level agreement is not identical between the first cluster and the second cluster.

17. The method of claim 10 wherein each of the first cluster and the second cluster is a network gateway deployment that receives requests from client applications that provide telecommunications services to one or more subscribers.

18. The method of claim 10 wherein the service level agreement is associated with at least one of: a service provider, an application and a network node.

19. A non-transitory computer-readable storage medium storing one or more sequences of instructions for providing geographical enforcement of service level agreements, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of: maintaining a first domain cluster of computer nodes that process incoming requests; maintaining a second domain cluster of computer nodes that process incoming requests, said second domain cluster being geographically remote with respect to the first domain cluster of computer nodes, wherein each computer node in the first domain cluster and in the second domain cluster updates a local traffic count that is based on a number of said requests processed; wherein each of said first domain cluster and said second domain cluster further includes a stateless access layer cluster, comprising a plurality of access tier servers, that receives and forwards requests, a stateful network layer cluster, comprising a plurality of network tier servers, that receives the requests from the access tier, wherein the internal state information is synchronized between the network tiers of said first domain cluster and said second domain cluster, and a firewall separating the stateless access layer cluster from the stateful network layer cluster; designating a first local master node in the first domain cluster and a second local master node in the second domain cluster, wherein, upon expiration of a time interval, the first local master node updates a cluster-wide traffic count for the first domain cluster and the second local master hub node updates the cluster-wide traffic count for the second domain cluster; and; electing one of said first local master node and the second local master node to be a global master node that maintains budget state information synchronized between both the first domain cluster and the second domain cluster; and uniformly enforcing, by said global master node, the service level agreement across both the first domain cluster and the second domain cluster according to both the cluster-wide traffic count in the first domain cluster and the cluster-wide traffic count in the second domain cluster.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2008
From: FORSBERG, ANDERS LARS-GORAN; PEDDADA, PRASAD
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 021476/0744 →
Continuity (2)
Provisional Application 61034008 · Mar 5, 2008
Related Publication 20090225763A1 · Sep 10, 2009