Method and apparatus for simulating a load on an application server in a network
First Claim
1. A method for simulating delay in a receiving network node responding to a request, comprising the steps of:
- responsive to a determination that a simulation is to be performed of the receiving network node receiving a request from a sending network node and sending, after a delay, a response to the sending network node, wherein the response services the request, intercepting one or more data packets of at least one of;
the request from the sending network node to the receiving network node, wherein the data packets are not permitted to reach the receiving network node until after a specified delay time;
ora response to the request, said response from the receiving network node to the sending network node, wherein the data packets are not permitted to reach the sending network node until after the specified delay time;
in response to intercepting a data packet form the sending network node, sending an acknowledgment message to the sending network node, wherein the acknowledgment message simulates that the receiving network node has received the intercepted data packet;
retaining the data packets;
releasing the data packets after the specified delay time, wherein delaying the data packets simulates the receiving network node receiving the request from the sending network node and sending the response to the request after the specified delay time; and
forwarding the data packets after the specified delay time to one of the receiving network node and the sending network node.
1 Assignment
0 Petitions
Accused Products
Abstract
A method is disclosed for simulating a load on an application server in a network. The method intercepts data packets of a request from a sender to a receiver. The data packets to be intercepted can be selected according to specified criteria, such as communications protocol or port and address information of the sender and/or receiver. A simulation session can begin and end based on a specified period of time or after a specified number of data packets have been received. The intercepted data packets are stored in a buffer and the time of arrival of the data packets is recorded. The data packets are held in the buffer for a user specified delay time. Upon expiration of the delay time, the data packets are forwarded to the receiver. Alternately, the method can operate bi-directionally, or by intercepting and delaying data packets of a response of the receiver sent to the sender.
-
Citations
43 Claims
-
1. A method for simulating delay in a receiving network node responding to a request, comprising the steps of:
-
responsive to a determination that a simulation is to be performed of the receiving network node receiving a request from a sending network node and sending, after a delay, a response to the sending network node, wherein the response services the request, intercepting one or more data packets of at least one of; the request from the sending network node to the receiving network node, wherein the data packets are not permitted to reach the receiving network node until after a specified delay time;
ora response to the request, said response from the receiving network node to the sending network node, wherein the data packets are not permitted to reach the sending network node until after the specified delay time; in response to intercepting a data packet form the sending network node, sending an acknowledgment message to the sending network node, wherein the acknowledgment message simulates that the receiving network node has received the intercepted data packet; retaining the data packets; releasing the data packets after the specified delay time, wherein delaying the data packets simulates the receiving network node receiving the request from the sending network node and sending the response to the request after the specified delay time; and forwarding the data packets after the specified delay time to one of the receiving network node and the sending network node. - View Dependent Claims (2)
-
-
3. An apparatus for simulating delay in a receiving network node responding to a request, comprising:
-
means for intercepting one or more data packets of at least one of; a request from a sending network node to the receiving network node, wherein the data packets are not permitted to reach the receiving network node until after a specified delay time; and a response to the request, said response from the receiving network node to the sending network node, wherein the data packets are not permitted to reach the sending network node until after the specified delay time; wherein said means for intercepting are responsive to a determination that a simulation is to be performed of the receiving network node receiving the request from the sending network node and sending, after a delay, the response to the sending network node, wherein the response services the request; means for retaining the data packets; means for sending an acknowledgment message to the sending network node in response to intercepting a data packet from the sending network node, wherein the acknowledgment message simulates that the receiving network node has received the intercepted data packet; means for releasing the data packets after the specified delay time, wherein delaying the data packets simulates the receiving network node receiving the request from the sending network node and sending the response to the request after the specified delay time; and means for forwarding the data packets to one of the receiving network node and the sending network node after the specified delay time. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. An apparatus for simulating a delay, comprising:
-
a simulator engine; and a storage, the storage including, one or more simulation session records, wherein a particular session record comprises information identifying a connection and a delay time specifying a length of time for which data packets in transfer in at least one direction on the connection are to be delayed, and one or more running session records, the running session records having a buffer for data packet storage that stores data packets that the simulator engine determines are to be delayed in accordance with information stored in the simulation session records; and wherein the simulator engine includes; a session manager module that determines whether data packets received by the apparatus should be delayed based in information in the session records, and a packet filtering module that, based on the determination by the session manager that data packets received by the apparatus should be delayed, intercepts one or more data packets in transfer in at least one direction on the connection, an acknowledgement message intercept module; wherein the intercepted data packets are stored in the buffer and released after the delay time to prevent the packets from reaching a destination node on the connection for the delay time, wherein preventing the packets from reaching the destination node simulates the load on the application server; wherein the acknowledgment message intercept module is operable to send an acknowledgement message to a network node that transmitted the intercepted data packets, wherein the acknowledgment message replaces an acknowledgment message that would have been sent by the destination node if the data packets had not been intercepted. - View Dependent Claims (21, 22, 23)
-
-
24. A computer-readable storage medium having stored thereon one or more sequences of instructions which, when executed by one or more processors, cause the one or more processors to carry out a method for simulating delay in a receiving network node responding to a request, the steps comprising:
-
responsive to a determination that a simulation is to be performed of the receiving network node receiving a request from a sending network node and sending, after a delay, a response to the sending network node, wherein the response services the request, intercepting one or more data packets of at least one of; the request from the sending network node to the receiving network node, wherein the data packets are not permitted to reach the receiving network node until after a specified delay time; and a response to the request, said response from the receiving network node to the sending network node, wherein the data packets are not permitted to reach the sending network node until after the specified delay time; retaining the data packets; releasing the data packets after the specified delay time, wherein delaying the data packets simulates the receiving network node receiving the request from the sending network node and sending the response to the request after the specified delay time; and forwarding the data packets after the specified delay time to one of the receiving network node and the sending network node.
-
-
25. An apparatus, comprising:
-
a network interface that is coupled to the data network for receiving one or more packet flows therefrom; a processor; one or more stored sequences of instructions which, when executed by the processor, cause the processor to perform; responsive to a determination that a simulation is to be performed of a receiving network node receiving a request from a sending network node and sending, after a delay, a response to the sending network node, wherein the response services the request, intercepting one or more data packets of at least one of; the request from the sending network node to the receiving network node, wherein the data packets are not permitted to reach the receiving network node until after a specified delay time;
ora response to the request, said response from the receiving network node to the sending network node, wherein the data packets are not permitted to reach the sending network node until after the specified delay time; in response to intercepting a data packet from the sending network node, sending an acknowledgment message to the sending network node, wherein the acknowledgment message simulates that the receiving network node has received the intercepted data packet; retaining the data packets; releasing the data packets after the specified delay time, wherein delaying the data packets simulates the receiving network node receiving the request from the sending network node and sending the response to the request after the specified delay time; and forwarding the data packets after the specified delay time to one of the receiving network node and the sending network node. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
-
Specification