Congestion management of session negotiations in network devices
AssigneeJuniper Networks, Inc.
InventorsYonghui Cheng, Choung-Yaw Shieh
Life of this patent
Estimating the term…
Abstract
A network device implements congestion management of sessions of a network protocol. In one implementation, an incoming request component receives session requests for a negotiation session between the network device and a second network device. A capacity pool stores a value relating to capacity of the network device to continue to efficiently process the session requests. New sessions are initiated when the value stored in the capacity pool is less than an estimate of the capacity of the network device at which the network device maximizes processor usage while minimizing session timeouts.
Claims20
A system comprising:
- a first network device coupled to a second network device via a network, the first network device to:
- receive a first request to establish a virtual private network (VPN) through the network,
- determine a quantity of Internet Key Exchange (IKE) negotiation sessions that can be completed during a particular period of time,
- determine a threshold load value based on:
- the determined quantity of IKE negotiation sessions that can be completed during the particular time period, and
- an amount of time associated with an IKE negotiation session time out,
- determine whether a second received request to establish a VPN is stored in a queue, the second request being received prior to the first request being received,
- determine, when the second request is not stored in the queue, whether a current quantity of ongoing IKE negotiation sessions at the first network device is less than the threshold load value,
- determine to bypass the queue and begin an IKE negotiation session to establish the VPN when the second request is not stored in the queue and the current quantity of ongoing IKE negotiation sessions at the first network device is less than the threshold value, and
- store, when the second request is stored in the queue or the current quantity of ongoing IKE negotiation sessions at the first network device is not less than the threshold value, the first request in the queue to delay contacting the second network device to begin the IKE negotiation session.
A method comprising:
- receiving, by a first network device, a first request from a second network device to establish a virtual private network (VPN) through a network;
- determining, by the first network device, a quantity of Internet Key Exchange (IKE) negotiation sessions that can be completed during a particular period of time;
- determining, by the first network device, a threshold load value based on:
- the determined quantity of IKE negotiation sessions that can be completed during the particular period of time, and
- an amount of time associated with an IKE negotiation session time out;
- determining, by the first network device, whether a second request to establish a VPN is stored in a queue, the second request being received prior to the first request being received:
- determining, by the first network device and when the second request is not stored in the queue, whether a current load of ongoing IKE negotiation sessions at the first network device is less than the threshold load value;
- initiating, by the first network device, the IKE negotiation session with the second network device when the second request is not stored in the queue and the current load of ongoing IKE negotiation sessions at the first network device is less than the threshold load value;
- and
- storing, by the network device, the first request in the queue when the second request is stored in the queue or the current load of ongoing IKE negotiation sessions is not less than the threshold load value.
A method comprising:
- determining, by a first network device, a quantity of Internet Key Exchange (IKE) negotiation sessions that can be completed during a particular period of time;
- determining, by the first network device, a threshold value based on:
- the determined quantity of IKE negotiation sessions that can be completed during the particular period of time, and
- an amount of time associated with an IKE negotiation session time out;
- determining, by the first network device, whether a first request to establish a first virtual private network through a network is stored in a queue of the first network device;
- determining, by the first network device and when the first request is not stored in a queue of the first network device, whether to:
- begin an IKE negotiation session with a second network device based on a second request to establish a second virtual private network through the network, or
- delay beginning the IKE negotiation session,
- determining whether to begin the IKE negotiating session or to delay beginning the IKE negotiation session being based on comparing a quantity of ongoing IKE negotiating sessions to the threshold value;
- and
- initiating, by the first network device, the IKE negotiation session with the second network device based on determining whether to begin the IKE negotiation session or delay beginning the IKE negotiation session.
Dependencies are inferred from the claim text.