IP Library Granted Patent US 8,296,424
Granted Patent B2
US 8,296,424 · App. 12/861,832 · Granted Oct 23, 2012

Network capacity planning

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,296,424
App. No.
12/861,832
Granted
Oct 23, 2012
Kind
B2
Abstract

Data representing application deployment attributes, network topology, and network performance attributes based on a reduced set of element attributes is utilized to simulate application deployment. The data may be received from a user directly, a program that models a network topology or application behavior, and a wizard that implies the data based on an interview process. The simulation may be based on application deployment attributes including application traffic pattern, application message sizes, network topology, and network performance attributes. The element attributes may be determined from a lookup table of element operating characteristics that may contain element maximum and minimum boundary operating values utilized to interpolate other operating conditions. Application response time may be derived using an iterative analysis based on multiple instances of one or more applications wherein a predetermined number of iterations is used or until a substantially steady state of network performance is achieved.

Claims (70)

1. A method comprising:

analyzing, on an analysis machine, performance of a network when both a first and a second application are concurrently run on the network by:

setting current response times of the first and second applications to initial values,

determining first current network conditions when the first application runs on the network with its current response times,

determining new response times of the second application based on the first current network conditions,

determining second current network conditions when the second application runs on the network with its current response times,

determining new response times of the first application based on the second current network conditions, and

repeating the determining of the new response times using the new response times as the current response times until a stable condition is reached; and

providing one or more reports based on the performance of the network upon reaching the stable condition.

2. The method of claim 1 , including:

defining a plurality of defined response times of the first application on the network based on a plurality of defined network conditions; and

defining a plurality of defined response times of a second application on the network based on the plurality of defined network conditions;

wherein determining the new response times of the first and second applications is based on the defined response times.

3. The method of claim 2 , wherein defining the plurality of defined response times of the first application includes defining at least one of the defined response times at boundary values of the defined network conditions.

4. The method of claim 3 , wherein determining the new response times includes an interpolation between the defined response times at the boundary values.

5. The method of claim 4 , wherein the boundary values include a minimum value and a maximum value of one or more conditions of the plurality of defined network conditions.

6. The method of claim 3 , wherein the boundary values include a minimum value and a maximum value of one or more conditions of the plurality of defined network conditions.

7. The method of claim 3 , wherein the plurality of defined network conditions includes two or more of: bandwidth, latency, packet loss, and TCP window size.

8. The method of claim 1 , wherein the first and second current network conditions include at least one of: bandwidth, latency, packet loss, and TCP window size.

9. The method of claim 8 , including determining at least one of the latency and the packet loss of the network based on the current response times.

10. The method of claim 1 , wherein reaching the stable condition is determined based on a comparison of the current and new response times.

11. The method of claim 1 , wherein determining the new response times includes determining a shortest path cost function attributed to each link of the network topology.

12. The method of claim 11 , wherein the shortest path function is determined based on at least one of a link bandwidth and a latency.

13. The method of claim 1 , wherein determining the new response time includes modeling one or more hops within the network as a network cloud having simplified interaction attributes.

14. The method of claim 1 , wherein determining the new response time includes modeling each router in the network based solely on link buffer sizes.

15. The method of claim 1 , wherein determining the new response time includes modeling each link having an attribute related to at least one of TCP window size, latency, bandwidth, packet loss, and utilization.

16. The method of claim 1 , wherein determining the new response time includes modeling servers on the network by a utilization queuing model based on a number of simultaneous transactions on a server within a given time period.

17. The method of claim 1 , wherein determining the new response time includes modeling congestion on a router in the network based on weighted fair queuing (WFQ) properties and the traffic flowing through the router.

18. The method of claim 1 , wherein determining the new response time includes ignoring congestion effects on server delay.

19. A non-transitory computer readable medium upon which is stored a computer program that is configured to cause a processor to analyze performance of a network when both a first and a second application are concurrently run on the network by:

setting current response times of the first and second applications to initial values,

determining first current network conditions when the first application runs on the network with its current response times,

determining new response times of the second application based on the first current network conditions,

determining second current network conditions when the second application runs on the network with its current response times,

determining new response times of the first application based on the second current network conditions,

repeating the determining of the new response times using the new response times as the current response times until a stable condition is reached, and

providing one or more reports based on the performance of the network upon reaching the stable condition.

20. The medium of claim 19 , wherein the program configures the processor to:

define a plurality of defined response times of the first application on the network based on a plurality of defined network conditions; and

define a plurality of defined response times of a second application on the network based on the plurality of defined network conditions;

wherein determining the new response times of the first and second applications is based on the defined response times.

21. The medium of claim 20 , wherein defining the plurality of defined response times of the first application includes defining at least one of the defined response times at boundary values of the defined network conditions.

22. The medium of claim 21 , wherein determining the new response times includes an interpolation between the defined response times at the boundary values.

23. The medium of claim 22 , wherein the boundary values include a minimum value and a maximum value of one or more conditions of the plurality of defined network conditions.

24. The medium of claim 21 , wherein the boundary values include a minimum value and a maximum value of one or more conditions of the plurality of defined network conditions.

25. The medium of claim 21 , wherein the plurality of defined network conditions includes two or more of: bandwidth, latency, packet loss, and TCP window size.

26. The medium of claim 19 , wherein the first and second current network conditions includes at least one of: bandwidth, latency, packet loss, and TCP window size.

27. The medium of claim 26 , including determining at least one of the latency and the packet loss of the network based on the current response times.

28. The medium of claim 19 , wherein reaching the stable condition is determined based on a comparison of the current and new response times.

29. A system comprising:

a processor that is configured to analyze performance of a network when both a first and a second application are concurrently run on the network by:

setting current response times of the first and second applications to initial values,

determining first current network conditions when the first application runs on the network with its current response times,

determining new response times of the second application based on the first current network conditions,

determining second current network conditions when the second application runs on the network with its current response times,

determining new response times of the first application based on the second current network conditions, and

repeating the determining of the new response times using the new response times as the current response times until a stable condition is reached; and

a user interface that is configured to provide one or more reports based on the performance of the network upon reaching the stable condition.

30. The system of claim 29 , wherein the processor is configured to:

define a plurality of defined response times of the first application on the network based on a plurality of defined network conditions,

define a plurality of defined response times of a second application on the network based on the plurality of defined network conditions, and

determine the new response times of the first and second applications is based on the defined response times.

31. The system of claim 30 , wherein the processor is configured to define the plurality of defined response times of the first application by defining one or more of the defined response times at boundary values of the defined network conditions.

32. The system of claim 31 , wherein the processor is configured to determine the new response times via an interpolation between the defined response times at the boundary values.

33. The system of claim 32 , wherein the boundary values include a minimum value and a maximum value of one or more conditions of the plurality of defined network conditions.

34. The system of claim 31 , wherein the boundary values include a minimum value and a maximum value of one or more conditions of the plurality of defined network conditions.

35. The system of claim 31 , wherein the plurality of defined network conditions includes two or more of: bandwidth, latency, packet loss, and TCP window size.

36. The system of claim 29 , wherein the first and second current network conditions include at least one of: bandwidth, latency, packet loss, and TCP window size.

37. The system of claim 36 , including determining at least one of the latency and the packet loss of the network based on the current response times.

38. The system of claim 29 , wherein reaching the stable condition is determined based on a comparison of the current and new response times.

Assignments (21)
RELEASE OF SECURITY INTEREST Recorded Aug 11, 2023
From: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC; RIVERBED HOLDINGS, INC.
Reel/Frame 064673/0739 →
CHANGE OF NAME Recorded Feb 18, 2022
From: RIVERBED TECHNOLOGY, INC.
To: RIVERBED TECHNOLOGY LLC
Reel/Frame 059232/0551 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS U.S. COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0169 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0108 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0046 →
SECURITY INTEREST Recorded Dec 10, 2021
From: RIVERBED TECHNOLOGY LLC (FORMERLY RIVERBED TECHNOLOGY, INC.); ATERNITY LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS U.S. COLLATERAL AGENT
Reel/Frame 058486/0216 →
PATENT SECURITY AGREEMENT Recorded Oct 27, 2021
From: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 057943/0386 →
PATENT SECURITY AGREEMENT SUPPLEMENT - FIRST LIEN Recorded Oct 14, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 057810/0502 →
PATENT SECURITY AGREEMENT SUPPLEMENT - SECOND LIEN Recorded Oct 14, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 057810/0559 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORED AT REEL 056397, FRAME 0750 Recorded Oct 13, 2021
From: MACQUARIE CAPITAL FUNDING LLC
To: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 057983/0356 →
SECURITY INTEREST Recorded May 26, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: MACQUARIE CAPITAL FUNDING LLC
Reel/Frame 056397/0750 →
PATENT SECURITY AGREEMENT Recorded Mar 5, 2021
From: RIVERBED TECHNOLOGY, INC.
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 055514/0249 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY NAME PREVIOUSLY RECORDED ON REEL 035521 FRAME 0069. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST IN PATENTS. Recorded Jun 2, 2015
From: JPMORGAN CHASE BANK, N.A.
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 035807/0680 →
SECURITY INTEREST Recorded May 1, 2015
From: RIVERBED TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 035561/0363 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Apr 28, 2015
From: BARCLAYS BANK PLC
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 035521/0069 →
PATENT SECURITY AGREEMENT Recorded Dec 27, 2013
From: RIVERBED TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032421/0162 →
RELEASE OF PATENT SECURITY INTEREST Recorded Dec 26, 2013
From: MORGAN STANLEY & CO. LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 032113/0425 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2013
From: OPNET TECHNOLOGIES LLC
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 030459/0372 →
CHANGE OF NAME Recorded May 14, 2013
From: OPNET TECHNOLOGIES, INC.
To: OPNET TECHNOLOGIES LLC
Reel/Frame 030411/0310 →
SECURITY AGREEMENT Recorded Dec 20, 2012
From: RIVERBED TECHNOLOGY, INC.; OPNET TECHNOLOGIES, INC.
To: MORGAN STANLEY & CO. LLC
Reel/Frame 029646/0060 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2012
From: MALLOY, PATRICK J.; ZNAMOVA, DANA; COHEN, ALAIN J.; DUNN, ANTOINE; STROHM, JOHN; HAIDER ALI, ABBAS; ELSNER, RUSSELL
To: OPNET TECHNOLOGIES, INC
Reel/Frame 028978/0782 →