In developing and describing flows for your network, you may find it useful to prioritize flows. Flow prioritization is ranking flows based on their importance, which can be described in various ways, depending on your environment. Flows can be prioritized according to importance, based on the characteristics shown in Figure 4.2. Some common prioritizations include:
Business objectives and the impact of a flow on the customer's business
Political objectives
One or more of the performance requirements of the flow (a subset of capacity, delay, RMA, quality of service)
Security requirements for each flow
The numbers of users, applications, and/or devices that a flow serves
The purpose for prioritizing flows is to determine which flows get most resources or which flows get resources first. Typically the primary resource is funding. This is an entirely new way of looking at how to allocate funding for parts of the network. By doing it based on flows, which are directly representative of the users and their applications and devices, the resulting network architecture and design are better representations of user, application, and device requirements.
You may use more than one parameter for prioritization, creating multiple levels of priority. It is common to start by prioritizing based on the number of users that a flows supports, then adding another parameter, such as a performance requirement (e.g., capacity). Some example prioritizations are presented in Figures 4.33 and 4.34.
Flow ID | Performance Requirements | Number of Users | ||
---|---|---|---|---|
Reliability | Capacity | Delay | ||
F1 | N/A | 1.2 Mb/s | 10 ms | 1200 |
F2 | 99.5% | 100 Kb/s | N/A | 550 |
F3 | 99.5% | 15 Kb/s | 100 ms | 100 |
CF1 | 99.95% | 500 Kb/s | 100 ms | 1750 |
CF2 | N/A | 100 Kb/s | 100 ms | 2100 |
CF3 | N/A | 3 Mb/s | 100 ms | 50 |
Total Budget for Network Project—$750K |
Flow ID | Performance Requirements | Number of Users | Budget | Priority | ||
---|---|---|---|---|---|---|
Reliability | Capacity | Delay | ||||
CF2 | N/A | 100 Kb/s | 100 ms | 2100 | $274K | 1 |
CF1 | 99.95% | 500 Kb/s | 100 ms | 1750 | $228K | 2 |
F1 | N/A | 1.2 Mb/s | 10 ms | 1200 | $157K | 3 |
F2 | 99.5% | 100 Kb/s | N/A | 550 | $72K | 4 |
F3 | 99.5% | 15 Kb/s | 100 ms | 100 | $13K | 5 |
CF3 | N/A | 3 Mb/s | 100 ms | 50 | $6K | 6 |
Total Budget for Network Project—$750K |
In Figure 4.34 the flows are prioritized based on the number of users the flow supports. This information is determined from the requirements specification and the requirements map, by comparing user, application, and device requirements and mapping them to common flows. For this network there is a funding level ($750K), which is distributed to each flow based on the number of users supported.
Another example prioritizes flows based on performance requirements, in this case reliability. Figure 4.35 shows a set of flows prioritized this way. In this example there are three levels of reliability: 99.95%, 99.5%, and N/A (not applicable). Budget allocations for each level are as follows: highest level, one half of budget; middle level, three eighths of budget; and lowest level, one eighth of budget.
Flow ID | Performance Requirements | Number of Users | Budget | Priority | ||
---|---|---|---|---|---|---|
Reliability | Capacity | Delay | ||||
CF1 | 99.95% | 500 Kb/s | 100 ms | 1750 | $375K | 1 |
F2 | 99.5% | 100 Kb/s | N/A | 550 | $141K | 2 |
F3 | 99.5% | 15 Kb/s | 100 ms | 100 | $141K | 2 |
F1 | N/A | 1.2 Mb/s | 10 ms | 1200 | $31K | 3 |
CF2 | N/A | 100 Kb/s | 100 ms | 2100 | $31K | 3 |
CF3 | N/A | 3 Mb/s | 100 ms | 50 | $31K | 3 |
Total Budget for Network Project—$750K |
Funding can be applied to this list of flows in various ways. It can be applied based on the level of reliability. In this case all flows with equal levels of reliability get equal amounts of funding; this allocation can then be refined by including another parameter, such as the users or applications supported.
How per-flow funding relates to purchasing equipment is discussed in Chapter 10.