Scalability of providing packet flow management
First Claim
1. A gateway comprising:
- one or more process instances each of which is configured to route incoming packets towards destination addresses;
a network processing unit (NPU) configured to determine if the incoming packets match information cached at the NPU; and
a demux manager configured to determine if the incoming packets match information cached at the demux manager;
wherein the NPU is configured to route the incoming packets to a process instance indicated by the information cached at the NPU if the incoming packets match information cached at the NPU, and to route the incoming packets to the demux manager if the incoming packets do not match information cached at the NPU; and
wherein the demux manager is configured to;
(i) route the incoming packets to a process instance indicated by the information cached at the demux manager if the incoming packets match information cached at the demux manager,(ii) assign the incoming packets to a new process instance if the incoming packets do not match information cached at the demux manager, and(iii) dynamically add one or more new process instances depending on load information of at least some of the one or more process instances.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for managing packet flows in a communication network are provided. Packet information can be cached on different levels and used to avoid external queries. The cache information can also be correlated with other types of information, such as location information, to be able to serve that information quicker than if one or more external queries were to be made. A demux manager can provide routing and session setup, by routing packets that already have a session to the session manager and assigning packets to a session manager if they are not already assigned to a session. The tiered architecture also provides scalability to many users and minimizes delays even during high call volumes because the load can be distributed well across the gateway'"'"'s resources.
134 Citations
20 Claims
-
1. A gateway comprising:
-
one or more process instances each of which is configured to route incoming packets towards destination addresses; a network processing unit (NPU) configured to determine if the incoming packets match information cached at the NPU; and a demux manager configured to determine if the incoming packets match information cached at the demux manager; wherein the NPU is configured to route the incoming packets to a process instance indicated by the information cached at the NPU if the incoming packets match information cached at the NPU, and to route the incoming packets to the demux manager if the incoming packets do not match information cached at the NPU; and wherein the demux manager is configured to; (i) route the incoming packets to a process instance indicated by the information cached at the demux manager if the incoming packets match information cached at the demux manager, (ii) assign the incoming packets to a new process instance if the incoming packets do not match information cached at the demux manager, and (iii) dynamically add one or more new process instances depending on load information of at least some of the one or more process instances. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method comprising:
-
receiving a plurality of packets at a network processing unit (NPU) residing on a gateway, a packet to correspond to a session; if the packet matches information cached at the NPU, sending the packet from the NPU to a first process instance corresponding to the session, the first process instance belonging to a set of one or more process instances; if the packet does not match an NPU flow, sending the packet from the NPU to a demux manager; analyzing the packet at the demux manager to determine if the session is a previously established session; if the session is a previously established session, sending the packet from the demux manager to a second process instance corresponding to the session, the second process instance belonging to the set of process instances; if the session is not a previously established session; assigning the packet to a third process instance belonging to the set of process instances, sending the packet from the demux manager to the third process instance; and dynamically adding a new process instance to the set of process instances depending on load information of at least some process instances in the set of process instances; thereby reducing load on the demux manager by relieving the demux manager from having to analyze each incoming packet. - View Dependent Claims (13, 14, 15, 16)
-
-
17. At least one non-transitory media comprising logic that when executed is operable to:
-
receive a packet corresponding to a session at a network processing unit (NPU) residing on a gateway; if the packet matches information cached at the NPU, send the packet from the NPU to a first process instance corresponding to the session, the first process instance belonging to a set of one or more process instances; if the packet does not match an NPU flow, send the packet from the NPU to a demux manager; analyze the packet at the demux manager to determine if the session is a previously established session; if the session is a previously established session, send the packet from the demux manager to a second process instance corresponding to the session, the second process instance belonging to the set of process instances; if the session is not a previously established session; assign the packet to a third process instance belonging to the set of process instances, send the packet from the demux manager to the third process instance; and dynamically add a new process instance to the set of process instances depending on load information of at least some process instances in the set of process instances thereby reducing load on the demux manager by relieving the demux manager from having to analyze each incoming packet. - View Dependent Claims (18, 19, 20)
-
Specification