The present invention relates to communications, and in particular to controlling sessions associated with mass session events.
Telephony systems are generally engineered to handle an expected amount of traffic. The amount of traffic is generally fairly predictable, given the large number of users and historical data regarding the use of the telephony networks. On occasion, certain events may trigger excessive use of the telephony network, wherein the capacity of the telephony network is exceeded for a period of time. A mass calling event occurs when a large number of callers try to contact a given entity all at once or over a relatively short period of time. Mass calling events may be initiated in association with television or radio contests, ticket sales, large-scale emergencies, disasters, registrations, or voting. Whether these mass calling events are planned or unexpected, there is a need to properly handle mass communication events. Events that will likely cause a mass calling event are often addressed ahead of time, wherein additional resources are provided or otherwise allocated prior to the event, such that the additional volume of traffic can be handled as desired. Additional steps can be taken to manage or limit call volume in light of existing resources. In traditional circuit-switched networks, special trunks, referred to as choke trunks, are employed to handle calls associated with the event, and certain call control techniques may be employed to limit the amount of traffic as necessary when the resources of the dedicated trunks are exceeded.
Unfortunately, the next generation of voice-over-packet networks is inherently less adept at handling mass events, because dedicated trunks and entities for allowing access to these trunks are not generally available. Most voice-over-packet mechanisms for controlling sessions, including voice calls, have been aimed at the managing of bandwidth or quality of service by the access networks. Bandwidth and quality of service issues in the core network that connects the access networks are generally addressed by over-provisioning the networks, such that many resources are often wasted. This configuration often leaves the networks handling mass session events and the servers to which these mass session events are directed largely uncontrolled, and often overwhelmed when such events take place. Accordingly, there is a need to provide a mechanism to properly and efficiently control mass session events, whether planned or unplanned, in a defined fashion. There is a further need to handle, including prioritizing, incoming and outgoing calls to and from select locations, including geographic locations, addresses, domains, or numbers, at certain times or dates.
The present invention provides a policy decision function and one or more policy enforcement functions to handle mass session events, such as those associated with radio or television contests, promotional or sales events, and emergencies, where a significant number of sessions may be initiated within a short period of time. In many instances, the sessions are associated with, and likely directed to, an application. The policy decision function may receive policy parameters related to the mass session event and determine a session policy for the mass session event based on the policy parameters and perhaps other predefined policy rules. The policy parameters and related information may be received from the application, the policy enforcement functions, or other network entities. Policy information corresponding to the policy established for the mass session event is then sent to the policy enforcement functions, which will take the necessary steps to implement the policy for the mass session event based on the policy information received. In particular, the policy enforcement functions may monitor traffic parameters in the traffic, wherein the traffic parameters help to identify traffic associated with the mass session event. Once traffic associated with the mass session event is detected, traffic is handled as dictated by the policy. Such handling may include simply allowing the traffic to pass without any processing or dropping the traffic.
In one embodiment, the traffic parameters assist the policy enforcement functions in detecting session initiation messages used to initiate a session. The traffic parameters monitored in the session initiation messages will help to determine whether the session being initiated is part of the mass session event. The policy enforcement functions may be implemented in an entity separate from the policy decision function. Further, the policy enforcement functions may be located at the edge of a protected network and distributed along the edge of the network to allow policy enforcement for sessions associated with the mass session event to occur at the edge of the protected network. The policy decision function and the policy enforcement functions may be implemented in a single device. In another embodiment, the policy decision function is located in a service node and the policy enforcement functions are associated with different border gateways, which may be logical or physical entities. Notably, each policy enforcement function may receive the same policy information or different policy information to allow different policies to be enforced at different policy enforcement functions, as necessary. Policies may be updated in a dynamic fashion as dictated by network capacity, traffic demands, or predetermined policy criteria. The traffic parameters that are monitored may bear on the destination of a session, the originator of a session, the address, domain, number, area, or region associated with the origin of the session, the type of session, the media involved in the session, or other information deemed pertinent to detecting a session associated with the mass session event.
Those skilled in the art will appreciate the scope of the present invention and realize additional aspects thereof after reading the following detailed description of the preferred embodiments in association with the accompanying drawing figures.
The accompanying drawing figures incorporated in and forming a part of this specification illustrate several aspects of the invention, and together with the description serve to explain the principles of the invention.
The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the invention and illustrate the best mode of practicing the invention. Upon reading the following description in light of the accompanying drawing figures, those skilled in the art will understand the concepts of the invention and will recognize applications of these concepts not particularly addressed herein. It should be understood that these concepts and applications fall within the scope of the disclosure and the accompanying claims.
The present invention provides a technique for handling mass session events associated with any type of communications, including voice-based calls, streaming media sessions, or other types of communication session. A mass session event is any type of predetermined or unexpected event in which a very large number of sessions are initiated to a particular entity or associated entities. Prior to delving into the details of the present invention, an overview of a communication environment in which the present invention may be practiced is described.
With reference to
A service node 22 may be provided to act as a call server or proxy to assist in handling the sessions that are attempted or established in association with a mass session event. The sessions are handled according to an appropriate policy, which may define what sessions are associated with a mass session event, as well as how to handle the initiation of the sessions or control the sessions once they are established. In general, a policy decision function (PDF) 24 will cooperate with an appropriate application associated with a mass calling event, as well as with other entities relevant to the mass session event, and determine a policy that should be enforced in association with the mass session event. Policies are then provided to policy enforcement functions (PEFs) 26, which are used to enforce the policies. As illustrated, the PDF 24 is implemented in the service node 22, and the PEFs 26 are implemented in the border gateways 14A-14C in a distributed fashion.
In the illustrated embodiment, the PEFs 26 will enforce policies in a distributed fashion at the edge of the communication network 12D for mass session events associated with an application 20 running on one or more of the application servers 18. As such, attempts to establish sessions in association with a mass session event to the application 20 will be processed according to the appropriate policies at the PEFs 26. The border gateways 14A-14C will be able to monitor traffic flowing therethrough to detect traffic parameters identifying sessions associated with the mass calling event and handle the session initiation attempt, the resultant session, or a combination thereof, according to the policy provided by the PDF 24. Depending on the policy, the session may be handled in any number of ways, including simply being allowed, being redirected, blocked, or processed in any other desired fashion. The policy may also dictate resource requirements and quality of service levels to provide with the session.
The PDF 24 and the PEFs 26 may be implemented in other entities than those illustrated. Further, the PDF 24 and a PEF 26 may be implemented on a common entity. For example, the service node 22 may support a PDF 24 and one or more PEFs 26. Each PDF 24 and PEF 26 may be able to handle policies from different types and from any number of mass session events.
With reference to
With reference to
In an alternative embodiment illustrated in
With reference to
With reference to
Implementation of the given policy is illustrated in the dashed steps 206, 208, and 210, wherein the PEF 26 will monitor traffic parameters bearing on policy implementation (step 206). Such monitoring may take place in the border gateways 14A-14C, which monitor traffic, including signaling and data, to determine whether the signaling messages or data relate to a session corresponding to a mass session event for which a policy is in place. The PEF 26 will detect traffic associated with the mass session event (step 208), and apply the appropriate policy to the traffic associated with the mass session event (step 210). For example, the traffic may be a session initiation message or a session in a mass session event, wherein the PEF 26 is configured to identify session initiation messages used in an attempt to initiate sessions in the mass session event. Processing of the session initiation message is provided according to the defined policy. The processing may include simply allowing the session initiation message to proceed uninterrupted to the service node 22, which acts as a proxy, or directly or indirectly to the application server 18.
The traffic parameters used to determine whether a session is a part of a mass session event may take many forms and require different techniques to be identified. For example, traffic parameters may bear on the type of protocol being used to initiate a session. Alternatively, the traffic parameters may identify a specific protocol message, originator of a session, destination of a session, type of session, type of media within the session, type of application associated with the session, and the like. The traffic parameters may also bear on a geographic area or region from which the call is being originated or to which the call is destined. Origination and destination information may be determined from area codes, directly numbers, or the like associated with an origin or destination for the session. Similarly, SIP or IP addresses, as well as domains, associated with the origin or destination of the session may be analyzed in whole or in part to help identify a session associated with a mass session event. In many instances, the destination associated with a session being attempted is important in determining whether a session is a session associated with a mass session event.
In addition to monitoring traffic parameters to determine if a session is a session for a mass session event, other parameters may bear on how a session of a mass session event is handled according to a defined policy. For example, the policy being enforced by a PEF 26 may limit the number of sessions for a particular event, for a particular time interval, or a particular date. Further, various distribution policies may be implemented, wherein the overall effect of the distributed policy enforcement provides proportional fairness or weighting among different locations, networks, or types of originators or communication terminals 16 originating the session. Each PEF 26, when operating within a border gateway 14, may be configured to limit the total number of sessions from a particular region or network, as well as dynamically cooperate with the PDF 24 to adjust policies to implement network balancing policies to provide a more even distribution of traffic.
Various blocking strategies may also be implemented based on any number of parameters in general, or specific traffic parameters associated with a given session. For example, liberal policies may be associated with dialing emergency numbers, such as 911, whereas policies associated with ticket sales, television contests, and the like may have more limited policies. The policies may limit the number of total calls, or the number of calls over a given period of time. Certain policies may allow 100 sessions per hour during a certain time period, where others may only allow ten sessions per hour to be established. Other policies may dictate redirecting sessions to alternate application servers 18 after certain session criteria are reached, as well as providing certain calls with a higher or lower priority. The PEFs 26 may operate to prioritize incoming or outgoing sessions as well as provide load balancing to or from select origins, destinations, locations, numbers, or addresses at different times and dates. Those skilled in the art will recognize the extreme flexibility in using different parameters and policies to effectively control sessions associated with mass session events.
With reference to
With reference to
Those skilled in the art will recognize improvements and modifications to the preferred embodiments of the present invention. All such improvements and modifications are considered within the scope of the concepts disclosed herein and the claims that follow.