WO2017127047A1 - Impairment in an application test execution - Google Patents

Impairment in an application test execution Download PDF

Info

Publication number
WO2017127047A1
WO2017127047A1 PCT/US2016/013856 US2016013856W WO2017127047A1 WO 2017127047 A1 WO2017127047 A1 WO 2017127047A1 US 2016013856 W US2016013856 W US 2016013856W WO 2017127047 A1 WO2017127047 A1 WO 2017127047A1
Authority
WO
WIPO (PCT)
Prior art keywords
impairment
test
distributed environment
application
actual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/US2016/013856
Other languages
French (fr)
Inventor
Shlomo Jacobson
Yoram Shamir
Don Moore
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micro Focus LLC
Original Assignee
EntIT Software LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EntIT Software LLC filed Critical EntIT Software LLC
Priority to US16/069,661 priority Critical patent/US10705947B2/en
Priority to PCT/US2016/013856 priority patent/WO2017127047A1/en
Publication of WO2017127047A1 publication Critical patent/WO2017127047A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3698Environments for analysis, debugging or testing of software

Definitions

  • Developers may document and may compare different tests to learn how to improve the application.
  • Data packets may be transmitted using a specific protocol. Examples of such a protocol include, but are not limited to, the Transmission Control Protocol (TCP) or Internet Control Message Protocol (ICMP).
  • TCP Transmission Control Protocol
  • ICMP Internet Control Message Protocol
  • the acknowledgement message is a TCP Acknowledgement (ACK) message.
  • ACK TCP Acknowledgement
  • a packet includes an echo request (ping), and the acknowledgment message is a corresponding echo reply.
  • test system may intentionally introduce impairment, such as latency and/or packet loss, into the test execution to better simulate a real operating environment in which the application under test will execute. This is referred to as network virtualization.
  • some implementations may include repeatedly measuring the impairment in the distributed environment and adjusting the test impairment throughout the test execution.
  • Fig. 2 is a diagram of an example non-transitory computer- readable medium with instructions for compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations.
  • the computer-readable medium includes instructions that, when executed, cause a processor of an application test device to: access (202) a test profile to determine whether a test impairment is to be introduced artificially into an application test execution in a distributed test environment; when the test profile directs introduction of the test impairment, measure (204) an actual impairment in a distributed test environment and subtracting the actual impairment from the test impairment; and, separate from the actual impairment, additionally introduce (206) an artificial impairment into the test execution of the application, the artificial impairment being the actual impairment minus the test impairment.
  • the instructions of the computer-readable medium further cause the processor to, for each session: measure a first impairment to a client from a network virtualization point in the distributed environment; measure a second impairment to a server from a network virtualization point in the distributed environment; and combine the first and second impairments before calculating the average impairment.
  • the instructions may further cause the processor to use half of the average impairment as the actual impairment to be subtracted from the test impairment used to send a packet either to the client or the server.
  • the test system may then average (514) the measured impairments from the multiple sessions.
  • the method applied may include, for each of a number of sessions, measuring the impairment in the distributed environment; calculating an average impairment from the number of sessions; and using the average impairment to determine the impairment to be subtracted from the test impairment. This may include for each session: measuring a first impairment to a client from a network virtualization point in the distributed environment: measuring a second impairment to a server from a network virtualization point in the distributed environment: and combining the first and second impairment before calculating the average impairment. Where this is the case, the method may further include using half of the average impairment as the measured impairment to be subtracted from the test impairment used to send a packet either to the client or the server.
  • the memory includes a test profile (320).
  • the test profile (320) governs how a test execution of the application under test should be conducted, including any specified test impairment as described herein.
  • the memory may further include a setting (322) determining whether the test impairment is to be applied independently on a server or client side, or on both, during the test of the application.
  • the processor (302) may be further programmed to measure the actual impairment by averaging impairment values determined in a number of sessions in the distributed environment. This may include that the processor is further programmed to combine impairments measured on a client-side of a network virtualization with impairments measured on a server-side of the network virtualization to measure the actual impairment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)

Abstract

A method includes, in a distributed environment for a test execution of an application, measuring impairment in the distributed environment; and, during the application test execution, subtracting the measured impairment from a test impairment that is artificially introduced into the application test execution based on a test profile.

Description

IMPAIRMENT IN AN APPLICATION TEST EXECUTION
BACKGROUND
[0001] Applications may be developed for a wide range of computerized devices including individual computers, networked computer systems and mobile phones. Within each such context, applications may be developed for many different uses. During development, an application or program may be tested, perhaps repeatedly, to ensure proper execution, identify and eliminate bugs and optimize usability. Developers may learn how to improve the application under development from such tests.
BRIEF DESCRIPTION OF THE DRAWINGS
[0002] The accompanying drawings illustrate various
implementations of the principles described herein and are a part of the specification. The illustrated implementations are merely examples and do not limit the scope of the claims.
[0003] Fig. 1 is a flowchart showing an example method of compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations.
[0004] Fig. 2 is a diagram of an example non-transitory computer- readable medium with instructions for compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations. [0005] Fig. 3 is a diagram of an example application test device for compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations.
[0006] Fig. 4 is a flowchart showing another example method of compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations.
[0007] Fig. 5 is a flowchart showing another example method of compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations.
[0008] Fig. 6 is a diagram showing another example method of an application test device for compensating for actual impairment in a test execution employing artificial impairment where the application test device is shown in a distributed test environment, consistent with the disclosed implementations.
[0009] Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.
DETAILED DESCRIPTION
[0010] As indicated above, applications may be developed for many devices, in different contexts, to serve any number of uses. During development, applications may be tested, perhaps repeatedly, to ensure proper execution, identify and eliminate bugs and optimize usability.
Developers may document and may compare different tests to learn how to improve the application.
[0011 ] Some applications operate in a distributed environment meaning that, during execution of the application, data is exchanged among different devices over a data network. The application may be composed of components installed and operating on different electronic devices connected by a network, where the different components communicate with each other to perform the purpose of the application. Alternatively, an application may simply interact with other devices or applications on other devices over a network when executing.
[0012] In any distributed environment including a data network, where data is exchanged across the network, there will naturally be some level of impairment in the transmission of the data. For example, if the network is congested with significant amounts of traffic, the transmission of data across the network will be slowed as compared to the speed of transmission without congestion or traffic. This delay in transmitting and receiving data is known as latency.
[0013] Additionally, when data is transferred across a data network, the data is typically divided into a series of smaller blocks. Each smaller block of data is included in a separate data packet for transmission. The data is then retrieved from the packets and reassembled by the recipient. During transmission, it occasionally occurs that a packet is lost and not delivered to the intended recipient. Consequently, the data, as received, may be incomplete due to a missing packet. The amount or rate of packet loss that occurs is another type of impairment in the distributed environment.
[0014] As used herein and in the following claims, the term
"impairment" will refer to latency, a rate of packet loss or a combination of both. As described, impairment is naturally experienced by an actual data network. Additionally, impairment may be introduced to network
virtualization, as described below.
[0015] As used herein and in the following claims, the term "test impairment" refers to an impairment that has been specified as part of the conditions under which an application test execution is to be conducted. This "test impairment" or an "artificial impairment" is artificially introduced by the test system to achieve the desired test conditions. As explained herein, the test impairment may be adjusted from the values specified to compensate for actual impairment in the distributed test environment. The adjusted test impairment is referred to as the "artificial impairment." Thus, "test impairment" and "artificial impairment" are distinguished from the "actual" or "measured" impairment of a distributed test environment. [0016] As used herein and in the following claims, the term "data packet" or "packet" refers to any packetized subset of data being transmitted over a data network. For example, a data packet may be a stream of octets sent over the network for which some response is anticipated. The term "acknowledgment message" refers to a corresponding response from a recipient acknowledging that a data packet was received.
[0017] Data packets may be transmitted using a specific protocol. Examples of such a protocol include, but are not limited to, the Transmission Control Protocol (TCP) or Internet Control Message Protocol (ICMP). In the TCP, the acknowledgement message is a TCP Acknowledgement (ACK) message. In the ICMP, a packet includes an echo request (ping), and the acknowledgment message is a corresponding echo reply.
[0018] When testing an application that will eventually operate in a distributed environment including a data network with potential impairment, the test system may intentionally introduce impairment, such as latency and/or packet loss, into the test execution to better simulate a real operating environment in which the application under test will execute. This is referred to as network virtualization.
[0019] However, if the test system is itself a distributed environment, the test system may already experience some actual and natural impairment, including latency and/or packet loss. This actual impairment, if present, adds to any artificial impairment artificially introduced by the test system to compound the impairment being considered in the application test execution. To address this distortion of the conditions for the test execution, the present specification describes measuring the actual impairment in a distributed test environment and subtracting that impairment from an artificial impairment being intentionally introduced into the test execution so that the result is a total impairment as desired for conducting the test execution. Because of the nature of the network and volatility of network conditions, these measurements and adjustments may be occurring constantly during the test execution. [0020] In the following description, for purposes of explanation, specific details are set forth in order to provide a thorough understanding of the disclosure. It will be apparent, however, to one skilled in the art that examples consistent with the present disclosure may be practiced without these specific details. Reference in the specification to "an implementation," "an example" or similar language means that a particular feature, structure, or characteristic described in connection with the implementation or example is included in at least that one implementation, but not necessarily in other implementations. The various instances of the phrase "in one
implementation" or similar phrases in various places in the specification are not necessarily all referring to the same implementation.
[0021 ] Fig. 1 is a flowchart showing an example method of compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations. In this example, the method includes, in a distributed environment for a test execution of an application, measuring impairment in the distributed environment; and during the application test execution, subtracting the measured impairment from a test impairment that is artificially introduced into the application test execution based on a test profile. The measuring may be done at test execution and updated with every packet sent.
[0022] As noted above, this example may apply when an application is under development and is being tested. The test environment for the application is a distributed environment including a number of different electronic devices communicating over a data network. Any such distributed environment has the potential to naturally experience impairment, including both latency and packet loss.
[0023] Consequently, the example method of Fig. 1 begins with measuring (1 00) any naturally-occurring impairment in this distributed environment. This impairment may be latency, measured by an amount of time required to transmit data on the network, or packet loss, measured by a rate at which packets are lost, or a combination of both latency and packet loss. [0024] When measuring latency in the distributed environment, the method may include recording a transit timestamp for a data packet forwarded in the distributed environment; and, upon receipt of an
acknowledgment message for that data packet, calculating a round-trip time based on the recorded transit timestamp. This round-trip time is measure of the latency in the environment. The round-trip time can be compared to earlier-measured round-trip times to determine whether latency is increasing or decreasing. The measured round-trip time can also be compared to an expected round-trip time standard to categorize the degree of latency the distributed environment is experiencing.
[0025] When measuring a packet loss rate in the distributed environment, the method may include recording a transit timestamp for a data packet forwarded in the distributed environment; and, upon failing to receive an acknowledgment message for that data packet within a pre- configured, time-out, recording a packet loss event. The number of packet loss events compared to the total number of packets transmitted gives a packet loss rate.
[0026] Once impairment has been measured, including any additional quantification of the impairment, this measured impairment is subtracted (102) from a test impairment that is artificially introduced into the application test execution based on a test profile. For example, if the test profile specifies that the test is to be conducted under conditions including a latency of 50 microseconds (ms) and the measured latency is 30 ms, the test system will introduce an additional 20 ms of artificial latency to total the 50 ms specified by the test profile. In another example, if the test profile specifies a packet loss rate of 0.5% and the measured rate of packet loss is 0.25%, the test system will introduce additional packet loss of 0.25% to produce the packet rate loss of 0.5% specified by the test profile.
[0027] The test profile indicates the impairment conditions under which the developer wishes to test the application. As indicated here, the method of Fig. 1 achieves the impairment conditions specified by the test profile so that the application test conditions are as desired, regardless of the addition of actual impairment factors from a real distributed test environment.
[0028] As will be described in further detail below, some implementations may include repeatedly measuring the impairment in the distributed environment and adjusting the test impairment throughout the test execution.
[0029] Fig. 2 is a diagram of an example non-transitory computer- readable medium with instructions for compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations. In this example, the computer-readable medium includes instructions that, when executed, cause a processor of an application test device to: access (202) a test profile to determine whether a test impairment is to be introduced artificially into an application test execution in a distributed test environment; when the test profile directs introduction of the test impairment, measure (204) an actual impairment in a distributed test environment and subtracting the actual impairment from the test impairment; and, separate from the actual impairment, additionally introduce (206) an artificial impairment into the test execution of the application, the artificial impairment being the actual impairment minus the test impairment.
[0030] As in the example of Fig. 1 , the instructions further cause the processor to: record a transit timestamp for a data packet forwarded in the distributed environment; upon receipt of an acknowledgment message for that data packet, calculate a round-trip time based on the recorded transit timestamp; and determine the measured latency based on the calculated round-trip time; and upon failure to receive an acknowledgement message within a pre-configured timeout, record a packet loss event.
[0031 ] In some implementations, the application under test may involve the transmission of data between a client and a server that are connected through the network. From a point in the network, then, we can consider impairment on the client-side of the data transmission or on the server-side of the data transmission. Consequently, the test impairment can be specified and the actual impairment compensated for on either or both of a client-side or a server-side of data transmission. In some implementations, the test profile indicates whether a test impairment is to be applied for server- side transmission independent of a client-side, for client-side transmission independent of a server-side or for both sever- and client-side transmission. In some implementations, this may mean the computer-readable medium includes instructions further cause the processor to: measure a first impairment to a client from a network virtualization point in the distributed environment; and measure a second impairment to a server from a network virtualization point in the distributed environment. In some implementations, there may be multiple servers involved in the test execution, each with its own impairment measurement and compensation.
[0032] Because the actual impairment in the distributed
environment can vary over time as conditions change, the described implementations can adjust for actual impairment dynamically on an on-going basis while an application test execution is conducted. Alternatively, the actual impairment used to adjust the test impairment can be an average of measured impairments over a period of time. For example, a number of sessions may be conducted in which application testing occurs. In such a case, the instructions on the computer-readable medium further cause the processor to: for each of a number of sessions, measure the impairment in the distributed environment; calculate an average impairment from the number of sessions; and use the average impairment to determine the actual impairment to be subtracted from the test impairment.
[0033] In some such implementations, the instructions of the computer-readable medium further cause the processor to, for each session: measure a first impairment to a client from a network virtualization point in the distributed environment; measure a second impairment to a server from a network virtualization point in the distributed environment; and combine the first and second impairments before calculating the average impairment. Where this is the case, the instructions may further cause the processor to use half of the average impairment as the actual impairment to be subtracted from the test impairment used to send a packet either to the client or the server.
[0034] Fig. 3 is a diagram of an example application test device for compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations. In this example, the device for testing an application in a distributed environment includes: a processor (302) for executing a test of the application ; a memory (304) for communicating with the processor and storing instructions for executing the test of the application; and a network interface (310) for executing the test of the application in the distributed environment. The processor (302), with the instructions, is programmed to measure (308) an actual impairment of packets moving in the distributed environment; and, during the application test execution, selectively introduce (310) an additional artificial impairment into movement of packets in the distributed environment, the artificial impairment being determined by subtracting a value representing the actual impairment from a specified test impairment.
[0035] Fig. 4 is a flowchart showing another example method of compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations. As noted above, in some implementations, the testing system is repeatedly measuring the impairment in the distributed environment and adjusting the test impairment throughout the test execution. An example of this is shown in Fig. 4.
[0036] As shown in Fig. 4, this example method may include, in a distributed environment for a test execution of an application, measuring (100) impairment in the distributed environment. During the application test execution, this example method includes subtracting (102) the measured impairment from a test impairment that is artificially introduced into the application test execution based on a test profile.
[0037] A determination (104) is them made as to whether the test execution is complete. If the test execution is not complete, the actual impairment in the distributed environment is again measured (100). This newly-measured actual impairment is then used to adjust the test impairment being applied, for example, by subtracting the measured impairment from a test impairment that is artificially introduced during the application test execution. If the test execution is complete, the method terminates.
[0038] Fig. 5 is a flowchart showing another example method of compensating for actual impairment in a test execution employing artificial impairment, consistent with the disclosed implementations. As described herein, the actual impairment in a distributed environment is measured for use in adjusting a test impairment being artificially applied as an artificial impairment. To achieve this, the test system records (400) a transit timestamp for a data packet that is forwarded. The test system then waits for and determines (502) whether an acknowledgment of that packet is received.
[0039] If the acknowledgement is not received prior to a time-out limit (504), then a packet loss event is recorded (508). If the
acknowledgment is received, the test system calculates (506) a round-trip time as a measure of latency. As noted above, this may be done for either or both of a client-side and a server-side. Thus, the method may include measuring a first impairment to a client from a network virtualization point in the distributed environment; and measuring a second impairment to a server from a network virtualization point in the distributed environment.
[0040] In some implementations, this may conclude (510) the assessment of impairment, and the actual impairment measured may then be used to adjust (516) a test impairment to provide an artificial impairment applied to the application test execution. In other implementations, this does not complete the assessment of impairment (510), and the actual impairment is again measured, as indicated above, so a dynamic or averaged impairment is available to adjust the test impairment.
[0041 ] If impairment is measured for a number of multiple sessions (512), the test system may then average (514) the measured impairments from the multiple sessions. In such an example, the method applied may include, for each of a number of sessions, measuring the impairment in the distributed environment; calculating an average impairment from the number of sessions; and using the average impairment to determine the impairment to be subtracted from the test impairment. This may include for each session: measuring a first impairment to a client from a network virtualization point in the distributed environment: measuring a second impairment to a server from a network virtualization point in the distributed environment: and combining the first and second impairment before calculating the average impairment. Where this is the case, the method may further include using half of the average impairment as the measured impairment to be subtracted from the test impairment used to send a packet either to the client or the server.
[0042] Fig. 6 is a diagram showing another example method of an application test device for compensating for actual impairment in a test execution employing artificial impairment where the application test device is shown in a distributed test environment, consistent with the disclosed implementations. As shown in Fig. 6, the application test device (300) may be physically located at any site remove from both the client (328) and the server (326) involved in the text execution of an application under test. The client (328), server (326) and application test device (300) all communicate via a computer network (330).
[0043] As described above, the application test device (300) includes a processor (302), memory (304) and a network interface (306) for communicating with the network (330). The application test device (300) may also use a network virtualization (324) which is a virtualized view of the network (330) for purposes of testing the application under consideration. As indicated above, the network virtualization (324) may include a network virtualization point from which server-side versus client-side impairment is measured.
[0044] In this example, the memory includes a test profile (320). The test profile (320) governs how a test execution of the application under test should be conducted, including any specified test impairment as described herein. Where a test impairment is specified, the memory may further include a setting (322) determining whether the test impairment is to be applied independently on a server or client side, or on both, during the test of the application. As indicated above, the processor (302) may be further programmed to measure the actual impairment by averaging impairment values determined in a number of sessions in the distributed environment. This may include that the processor is further programmed to combine impairments measured on a client-side of a network virtualization with impairments measured on a server-side of the network virtualization to measure the actual impairment.
[0045] The preceding description has been presented only to illustrate and describe examples of the principles described. This description is not intended to be exhaustive or to limit these principles to any precise form disclosed. Many modifications and variations are possible in light of the above teaching.

Claims

CLAIMS WHAT IS CLAIMED IS:
1 . A method comprising:
in a distributed environment for a test execution of an application, measuring impairment in the distributed environment: and
during the application test execution, subtracting the measured impairment from a test impairment that is artificially introduced into the application test execution based on a test profile.
2. The method of claim 1 , further comprising repeatedly measuring the impairment in the distributed environment and adjusting the test impairment throughout the test execution.
3. The method of claim 1 , wherein measuring latency in the distributed environment comprises:
recording a transit timestamp for a data packet forwarded in the distributed environment: and,
upon receipt of an acknowledgment message for that data packet, calculating a round-trip time based on the recorded transit timestamp.
4. The method of claim 1 , wherein measuring a packet loss rate in the distributed environment comprises:
recording a transit timestamp for a data packet forwarded in the distributed environment; and,
upon failing to receive an acknowledgment message for that data packet within a pre-configured, time-out, recording a packet loss event.
5. The method of claim 1 , further comprising:
measuring a first impairment to a client from a network virtualization point in the distributed environment; and measuring a second impairment to a server from a network virtualization point in the distributed environment.
6. The method of claim 1 , further comprising:
for each of a number of sessions, measuring the impairment in the distributed environment;
calculating an average impairment from the number of sessions; and using the average impairment to determine the measured impairment to be subtracted from the test impairment.
7. The method of claim 6, further comprising, for each session :
measuring a first impairment to a client from a network virtualization point in the distributed environment;
measuring a second impairment to a server from a network virtualization point in the distributed environment; and
combining the first and second impairment before calculating the average impairment.
8. The method of claim 7, further comprising using half of the average impairment as the measured impairment to be subtracted from the test impairment used to send a packet either to the client or the server.
9. A non-transitory computer-readable medium, the computer-readable medium comprising instructions that, when executed, cause a processor of an application test device to:
access a test profile to determine whether a test impairment is to be introduced artificially into an application test execution in a distributed test environment;
when the test profile directs introduction of the test impairment, measure an actual impairment in a distributed test environment and subtracting the actual impairment from the test impairment; and separate from the actual impairment, additionally introduce an artificial impairment into the test execution of the application, the artificial impairment being the actual impairment minus the test impairment.
10. The medium of claim 9, wherein the test profile indicates whether a test impairment is to be applied for server-side transmission independent of a client- side, for client-side transmission independent of a server-side or for both sever- and client-side transmission.
1 1 . A device for testing an application in a distributed environment, the device comprising:
a processor for executing a test of the application;
a memory for communicating with the processor and storing instructions for executing the test of the application; and
a network interface for executing the test of the application in the distributed environment;
wherein, the processor, with the instructions, is programmed to measure an actual impairment of packets moving in the distributed environment; and during the application test execution, selectively introduce an additional artificial impairment into movement of packets in the distributed environment, the artificial impairment being determined by subtracting a value representing the actual impairment from a specified test impairment.
12. The device of claim 1 1 , the memory further comprising a test profile including the specified test impairment.
13. The device of claim 12, the memory further comprising a setting determining whether the test impairment is to be applied independently on a server or client side during the test of the application.
14. The device of claim 1 1 , wherein the processor is further programmed to measure the actual impairment by averaging impairment values determined in a number of sessions in the distributed environment.
15. The device of claim 14, wherein the processor is further programmed to combine impairments measured on a client-side of a network virtu alization with impairments measured on a server-side of the network virtualization to measure the actual impairment.
PCT/US2016/013856 2016-01-19 2016-01-19 Impairment in an application test execution Ceased WO2017127047A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/069,661 US10705947B2 (en) 2016-01-19 2016-01-19 Impairment in an application test execution
PCT/US2016/013856 WO2017127047A1 (en) 2016-01-19 2016-01-19 Impairment in an application test execution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2016/013856 WO2017127047A1 (en) 2016-01-19 2016-01-19 Impairment in an application test execution

Publications (1)

Publication Number Publication Date
WO2017127047A1 true WO2017127047A1 (en) 2017-07-27

Family

ID=59362583

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2016/013856 Ceased WO2017127047A1 (en) 2016-01-19 2016-01-19 Impairment in an application test execution

Country Status (2)

Country Link
US (1) US10705947B2 (en)
WO (1) WO2017127047A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001051864A (en) * 1999-08-12 2001-02-23 Hitachi Ltd Test execution method for data processing equipment
US20030204784A1 (en) * 2002-04-29 2003-10-30 Jorapur Gopal P. System and method for automatic test case generation
US20070168734A1 (en) * 2005-11-17 2007-07-19 Phil Vasile Apparatus, system, and method for persistent testing with progressive environment sterilzation
US20080172576A1 (en) * 2007-01-11 2008-07-17 International Business Machines Corporation Method for enhancing the diagnostic accuracy of a vlsi chip
US20090198482A1 (en) * 2008-02-05 2009-08-06 Hans Josef Schumacher Methods and systems for predicting application performance

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678250B1 (en) * 1999-02-19 2004-01-13 3Com Corporation Method and system for monitoring and management of the performance of real-time networks
US7269157B2 (en) 2001-04-10 2007-09-11 Internap Network Services Corporation System and method to assure network service levels with intelligent routing
US7274670B2 (en) * 2002-09-27 2007-09-25 Netiq Corporation Methods, systems and computer program products for assessing network quality
WO2005004370A2 (en) 2003-06-28 2005-01-13 Geopacket Corporation Quality determination for packetized information
US8238241B2 (en) 2003-07-29 2012-08-07 Citrix Systems, Inc. Automatic detection and window virtualization for flow control
US7821955B2 (en) 2006-12-28 2010-10-26 Motorola, Inc. Universal Plug-and-Play latency and delay compensation
EP2234333B1 (en) 2009-03-23 2015-07-15 Corvil Limited System and method for estimation of round trip times within a tcp based data network
US10672286B2 (en) * 2010-03-14 2020-06-02 Kryterion, Inc. Cloud based test environment
US8612599B2 (en) * 2011-09-07 2013-12-17 Accenture Global Services Limited Cloud service monitoring system
US9363152B2 (en) 2012-06-11 2016-06-07 Microsoft Technology Licensing, Llc Large-scale passive network monitoring using multiple tiers of ordinary network switches
US9847922B2 (en) * 2015-03-18 2017-12-19 Arista Networks, Inc. System and method for continuous measurement of transit latency in individual data switches and multi-device topologies

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001051864A (en) * 1999-08-12 2001-02-23 Hitachi Ltd Test execution method for data processing equipment
US20030204784A1 (en) * 2002-04-29 2003-10-30 Jorapur Gopal P. System and method for automatic test case generation
US20070168734A1 (en) * 2005-11-17 2007-07-19 Phil Vasile Apparatus, system, and method for persistent testing with progressive environment sterilzation
US20080172576A1 (en) * 2007-01-11 2008-07-17 International Business Machines Corporation Method for enhancing the diagnostic accuracy of a vlsi chip
US20090198482A1 (en) * 2008-02-05 2009-08-06 Hans Josef Schumacher Methods and systems for predicting application performance

Also Published As

Publication number Publication date
US10705947B2 (en) 2020-07-07
US20190034324A1 (en) 2019-01-31

Similar Documents

Publication Publication Date Title
EP2454852B1 (en) Network transmission capacity measurement
US6076113A (en) Method and system for evaluating user-perceived network performance
KR101576585B1 (en) Reducing buffer usage for tcp proxy session based on delayed acknowledgment
CN112653634A (en) Flow control method, device, equipment and readable storage medium
US20070299965A1 (en) Management of client perceived page view response time
Briscoe et al. Implementing the’prague requirements’ for low latency low loss scalable throughput (l4s)
US9503343B2 (en) Method and system for detecting network topology change
US9292397B1 (en) Light-weight method and apparatus for testing network devices and infrastructure
Zou et al. Achieving high utilization of flowlet-based load balancing in data center networks
Murata et al. A quality measurement tool for high-speed data transfer in long fat networks
US9191332B2 (en) Methods, systems, and computer readable media for updating sequence and acknowledgment numbers associated with replay packets
US10705947B2 (en) Impairment in an application test execution
Mahrenholz et al. Adjusting the ns-2 emulation mode to a live network
US20140189009A1 (en) Computer-readable recording medium and information processing apparatus
KR20190134798A (en) Test communication protocol
Vernersson Analysis of UDP-based reliable transport using network emulation
CN101174994A (en) Network card testing system and method
US10608863B2 (en) Transmission control application supporting TCP fast open
Jansen et al. Validation of simulated real world TCP stacks
Hall et al. Non-intrusive estimation of web server delays
KR101641689B1 (en) Server and method for transmitting acceleration data and recording medium thereof
KR20180106293A (en) Communication apparatus for calculating an rto value according to an actual rtt value and communication control method thereof
Ekblad et al. Approaches and Techniques to Assess the Accuracy of Network Emulators
Allansson et al. Comparing Model-and Delay-based Congestion Controls in a Kubernetes Cluster
CN110798378A (en) Storage testing method and system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16886690

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16886690

Country of ref document: EP

Kind code of ref document: A1