The present invention relates to the field of telecommunications and, more specifically, to a method and apparatus for configuring and protecting a ring network.
Data communication is the process by which two or more data terminals or peripherals send information to each other. In its simplest form, a data communication system, or network, is comprised of a transmitter, a transmission path, and a receiver.
A typical network communication involves computers and peripherals, or terminals or end devices, such as a telephone, that are connected in a LAN by a mesh, ring topology, as well as other topologies. Different LAN systems are then connected in a larger network, Iike a WAN, using a ring topology. Often, the internetwork link is called a backbone, a very high data-rate link. A virtual (or logical) LAN is a local area network with a definition that maps workstations on a logical basis, rather than geographic location.
Frame relay networks are digital networks in which different logical connections share the same physical path and some logical connections are given higher bandwidths than others. For example, a connection conveying a high proportion of video signals (which require a high bandwidth) could be set up for certain workstations in a company (or on a larger network) and other connections requiring less bandwidth could be set up for all other workstations. In frame relay networks, a committed information rate (CIR) is a bandwidth (expressed in bits per second) associated with a logical connection in a permanent virtual circuit (PVC). The Peak Information Rate (PIR) designates an upper limit that the traffic information rate may not exceed.
In configuring a network, a number of considerations arise. For one thing, the network has a maximum overall bandwidth that it can support. Indeed, individual links, or spans, in the network may be only able to support a certain bandwidth. Perhaps more importantly, it should be considered that, should a link of the network should fail, the network may need to be reconfigured and that these reconfigurations may overburden the network or individual span bandwidth.
In order to account for these considerations, various ring protections schemes have been proposed. In one type of Ring Protection mechanism, a span is reserved by using all less one of the available spans in the ring. In the event, that a span fails, the reserved span is employed to handle part of the traffic burden from the failed span. Examples of such ring protection schemes include EAPS from Extreme Networks, ERP-Ethernet Ring Protection from Siemens™ and ring protection mechanisms based on a redundancy manager, such as disclosed in U.S. Pat. No. 6,430,151 B 1.
The cited references may possibly be utilized for configuring a network. One problem is that the previous solutions would only be able to configure a single set of VLANs (domain). In the same physical ring, there may, and often does, coexist several logical domains. The problem is the optimisation of the ring configurations in order to improve the available bandwidth in the ring and know the effects of failures. Another problem is the configuration changes or failures that may occur in the network.
Specifically, the optimising method described in US2003/0023706A1 does not concern configuration optimisation but only to network design. Methods of flow control as referred to in U.S. Pat. No. 6,195,332 B1 are applied for determining the flow of packets in a ring and not for determining redundancy manager configuration (where the only available path in pre-configured), as EAPS from Extreme Networks and ERP from Siemens require. Previous IR 2004E11743 PT only focuses on a single domain and do not refer to multi-domain environment.
It should be clear that the previous attempts at ring protection have proven to be inadequate. The goal of ring protection should be to optimise ring configurations, e.g., locations and configurations of the redundancy manager, to improve the available bandwidth in the ring and to know the effects of the configurations impacts, namely configuration changes or failures may have in the network. In terms of configuring a network, there is needed a method to verify the required infrastructure to assure full ring resilience committed to the several domains specific requests. Such a solution should also determine how domains should be set (witch VLAN should belong to each domain) accomplishing, for one thing, a lowest ring overall bandwidth usage as possible and the bandwidth requirements for each span.
An object of the invention is to minimize bandwidth useage of a span.
Another object of the invention is to minimize overall bandwidth useage of the network.
An object of the invention is to find the span that should be used just for protection of the ring assuring lowest ring overall bandwidth usage as possible.
Another object of the invention is to verify the required infrastructure to assure full ring resilience.
Another object of the invention is to find the span that should be used just for protection of the ring assuring to minimise the maximum bandwidth of an active span.
According to the above objects, a method and system is provided for reconfiguring a network having N nodes and S spans that prevents a maximum usage parameter to be exceeded. The network is configured by selecting a span as a protection span to remain idle. An effect of the configuration on the network that causes the network to exceed a maximum usage parameter is calculated. The network is reconfigured by selecting a different span as a protection span to remain idle based on a result of the step of calculating that a previous span selected as the protection span to remain idle causes the network to exceed a maximum usage parameter such that the maximum usage parameter of the reconfigured network is not exceeded.
The present invention applies, in general, to telecommunications and more particularly, to Ethernet Networks, for example those used in Access. The invention may be applicable to telephony, particularly VoIP (Voice Over IP).
The invention shall now be described beginning with an understanding of the ring network and defining its characteristics. Consider a ring with N nodes: N.fwdarw.Number of Nodes
Nodes will be identified with a unique number, and represented by a character in lowercase. The set of nodes in the ring will be: R={1,2, . . . , n−1,n,n+1, . . . , N−1,N}
The ring will have N spans. Each span will be represented by: s.sub.(n−1,n).fwdarw.Span Between nodes n−1 and n
There will be communications flowing from two adjacent nodes. t.sub.(n−1,n).fwdarw.Traffic in the Span s.sub.(n−1,n)
In a scenario where each node communicates with all the others, such as in a many-to-many configuration, there will also exist traffic between all nodes. t.sub.(a,b).fwdarw.Traffic between nodes a and b
As all communications in this example are considered to be full duplex we will not trouble ourselves with the order of the nodes and the order becomes irrelevant for the purpose of this description. What is considered here is the overall used bandwidth in communications between two nodes. t.sub.(a,b)=t.sub.(b,a)
It should be clear that communications between the same node does not have an effect on the ring. This is represented here as: t.sub.(a,a)=0
In a Ring with N nodes there are N spans where the traffic may flow, and N−1 will be active in a ring span protection scheme. The logical traffic communications flow may be depicted as a complete graphic. K.sub.N.fwdarw.Complete Graph with N nodes
This graph is a logical network with (N−1)! possible communications. Each communication between two or more nodes has an expected traffic bandwidth usage. The optimisation of communications in a ring is to transform a K.sub.N complete graph with (N−1) active paths in a ring with just (N−1) active paths.
We turn now to the problem of optimising the usage of the ring bandwidth. The goal is to find the span that should be used just for protection of the ring assuring lowest ring bandwidth usage as possible. A common sense approach would lead to the conclusion that the span that should be selected as idle should be the one between the nodes with less traffic, i.e., used bandwidth. But this is an approach that may not optimise ring traffic bandwidth occupation.
During traffic analysis and optimisation processes having as target the bandwidth optimisation, it becomes evident that the local node traffic (node bandwidth) shall never be enough information to support such goal. Considering that all spans in a ring could be used, the bandwidth usage would become minimised. For the remaining of the document the traffic associated with a span when all spans are being used shall be identified as: Ts.sub.(n−1,n).fwdarw.Traffic in span s.sub.(n−1,n) using all available spans
The above mentioned and other concepts of the present invention will now be described with reference to the drawings of the exemplary and preferred embodiments of the present invention. The illustrated embodiments are intended to illustrate, but not to limit the invention.
An example of such a network 100 is illustrated in
In a ring size N, even some of communications between different nodes will use N/2 spans (odd ring sizes do not verify such condition). It is indifferent to use one of two possible paths, so the minimum traffic bandwidth usage should not consider the bandwidth of those communications.
a illustrates the case for the case where the number of nodes are odd.
In equation format the traffic for each span, between nodes n and n−1, can be given as follows:
If the number of nodes N is odd: Ts (n−1, n)=k=n−N−12n−1 .times. I=n k+N−12 .times. t (k, I)
And if the number of nodes N is even: Ts (n−1, n)=k=n−N−12−1n−1 .times. I=nk+N−12−1 .times. t (k, I)
We can express the traffic for any type of network by putting both equations together: Ts (n−1, n)=k=n−N−1+(−1) N2−12n−1 .times. I=nk+N−1+(−1) N2−12 .times. t (k, I)
The resulting value is the minimum usage needed for the span. In other words, it is guaranteed that a span bandwidth will be higher than this value.
The goal now is to know the effect of not using one span for traffic. The traffic of that span must follow the other spans. This affects not only the nodes adjacent to the span but all traffic that uses that span as the shortest path. Therefore, the traffic increment introduced in the ring when a span s.sub.(n−1,n) is not used is given as follows:
If the number of nodes N is odd: TIs (n−1, n)=k=n−N−12n−1 .times. I=n k+N−12 .times. t (k, I) .times. N−2 .times. (l−k)
And if the number of nodes N is even: TIs (n−1, n)=k=n−N2−1n−1 .times. I=nk+N−12−1 .times. t (k, I) .times. N−2 .times. (l−k)
And putting both equations together as before in order to obtain the following: TIs (n−1, n)=k=n−N−1+(−1) N2−12n−1 .times. I=n k+N−1+(−1) N2−12 .times. t (k, I) .times. N−2 .times. (l−k)
So total bandwidth usage in a ring when the span s.sub.(n−1, n) is blocked, or idle, is given by: If N is odd: TRs (n−1, n)=k=1 N times. Ts (k−1, k)+TIs (n−1, n) And if N is even: TRs (n−1, n)=k=1 N .times. Ts (k−1, k)+TIs (n−1, n)+N 2 .times. k=1N/2−1 .times. t (k, k+N/2)
And putting both equations together: TRs (n−1, n)=k=1 N .times. Ts (k−1, k)+TIs (n−1, n)+N .times. (1+(−1)N) 2 .times. k=1N/2−1 .times. t (k, k+N/2)(1)
The resulting span bandwidth owing to an idle span may be illustrated by
As illustrated in
The above equations are used in the present invention to calculate the optimal protecting span that minimises the bandwidth utilization in the ring. This is done here by applying the expression (1) for each Span and selecting the one that yields the lowest value.
Another important issue is to know what the impacts of failures or changes in the configuration are on the other spans in the ring. We now turn to resolving the problem of Full Resilience Confirmation. That is, ensuring that the impact on the bandwidth of any other span does not cause that span to be overloaded. When a span is not used it introduces traffic to others spans in the ring. The traffic existing in a span s.sub.(j−1,j) due to a failure in a span s.sub.(i−1,i) is given as: Ts (j−1, j).times. Fs (i−1, i)=k=i j−11 .times. I=j i−1 .times. t (k, I)(2)
Graphically, this can be represented in
If there is a need for resilience in the ring, it should be provisioned for the worst case, that is a maximum bandwidth in case of a failure.
Another interesting finding is that the bandwidth in a certain span when another span is not used is exactly the same when configuration inverts their roles (independently of the traffic flow matrix), that is: Ts.sub.(j−1, j)Fs.sub.(i−1, i)=Ts.sub.(i−1, i)Fs.sub.(j−1, j)
Thus, only half of the calculations are needed to know the required span bandwidth, or in another way: (N2)=C2N=N! (N−2)! .times. 2!
The importance of such a type of network analysis is apparent when trying to provision for the possibility of assuring full services resilience within the ring. In the same perspective, determining if a particular span copes with the traffic demand for resilience can also be considered in the same way.
To confirm if the ring infrastructure is full resilient the following methodology may be applied. The methodology is iterated for all spans. Next, for each span, the methodology is iterated from the span being used in the iteration to the last span. In each iteration, expression (2) is calculated and the result is stored if the result is greater than any previous one. Then, it is confirmed that the existing ring infrastructure can accommodate, for each span, the maximum value obtained in the last step.
Now, it is desired to minimise the maximum span bandwidth. Until now, the focus on optimisation was made considering that the goal was to minimise the sum of the bandwidth required in each span. Due to maximum span bandwidth capability, it is sometimes more important to minimise the bandwidth required in a span rather than the overall bandwidth in the ring. This situation may arise, for example, due to interface capability constraints. To continue, in order to find the protecting span that minimises the maximum value in any other span, the following methodology should be applied. Again, the process is iterated for all spans. For each span, iterate from the span being used in the previous step to the last span. In each span in the instant iteration, expression (2) is calculated and the result is stored if the value is greater than any previous one. Then, that span is chosen as the protecting span that minimises the maximum value obtained in the previous step.
Thus far, three optimization techniques have been described. Each of these techniques may be used separately or in any combination or permutation. It shall be appreciated from the above that bandwidth usage optimisation in the ring allows the telecom operator to assure best usage and return on investment from its main resource while improving the quality of service that is being offered. Knowing the effect of failures and consequent network behaviour provides the telecom operator the ability to earlier ascertain such events as well as earlier decide how to overcome them. Methodically employing the invention provides a proactive maintenance that avoids the foregoing problems of overloading a ring network. Such a capability is especially significant to assure a quality of service to clients and accomplish and agreed upon service level agreements. This translates into avoidance of profit erosion from SLA penalties.
The present invention shall now be discussed in terms of employing the above optimization techniques in order to configure a network. The effects of configuration changes give the ability to earlier prepare the required reconfigurations of the equipments or even accurately forecast necessary investments to support new traffic demand. This knowledge becomes especially useful when operators face traffic profiles that vary significantly according to different time schedules, for example, different configurations according to the hours of the day.
In one configuration optimization, the required infrastructure is verified to assure full ring resilience committed to the several domains specific requests. Consider the situation where there are several VLANs, each one with specific requests for Bandwidth. The configuration process is shown in
It shall be appreciated that the invention has application in the real world. For example, ERP does not necessarily have a uniform bandwidth all over the ring. Each span may have a different bandwidth. This probably may be achieved by selectively setting the Committed Information Rate (CIR) for each VLAN or Peak Information Rate (PIR). For example, this may be achieved according to operator's choice and SLA agreements between the operator and provider. In another aspect of the invention, this may be used as a kind of Connection Admission Control (CAC) to decide whether another VLAN should be added to the ring or not. In any event, the invention would be very useful in these networks.
Turning now to a second configuration optimization, we desire now to determine how domains should be set accomplishing lowest ring overall bandwidth usage as possible. With reference to
J Now, we turn to the third configuration optimization technique of the present invention, wherein it is desired to creating domains with minimal ring bandwidth. In other words, we determine how domains should be set in order to accomplish bandwidth requirements for each span. With reference to
Now turning to three concrete examples, we consider the three configuration optimizations above in turn. Consider a simplified example comprised of a ring with 3 Nodes (A, B, and C) and spans (1, 2, and 0. In the example, there are 10 VLANs and the following bandwidth requirements (values are in Mbit/s). It is assumed for this example that there are two requirements CIR and PIR, and that it is mandatory that CIR requirements are accomplished even if a link fails and the ring has enough bandwidth to assure PIR requirements when all links spans are operational. The CIR and PIR requirements for this example are shown in
The first configuration optimization, i.e., verifying the required infrastructure to assure full ring resilience committed to the several domains specific requests, is now considered. To find the required infrastructure, we first aggregate all spans bandwidths as shown in
As we see from
Now, we turn to the second configuration optimization example. In this case, it is desired to determine how the domains should be set accomplishing lowest ring overall bandwidth usage as possible.
The process shown in
From the tables, it can be seen that VLAN 7 has the same bandwidth increment to the ring independent of which span is used for protection. Similarly, VLAN 10 has the same bandwidth increment to the ring independently if span 1 or span 2 are used for protection. The results for VLANs 7 and 10, as will be explained, can be used to simplify the configuration solution. Of course, these results will be different in other scenarios.
The invention then selects domains, or groups of VLANS and corresponding configurations that minimize the bandwidth for the ring. In the example given, there are actually six different configurations that minimise the ring bandwidth. These combinations of the VLANs are extrapolated according to the following observations of the tables in
There are six configurations because VLAN 10 can be in either Domain 1 or 2 and for each of these permutations VLAN 7 can be in any of the three, which by permutational arithmetic makes 6 combinations. The 6 configurations are shown in
Consider case 1, a Domain 1 uses Span 1 for protection and is assigned VLANs 1,2,7,9 and 10. A second domain, Domain 2, uses Span 2 for protection and is assigned VLANs 3,5 and 6. A Domain 3 uses Span 3 for protection and is assigned VLANs 4 and 8. From
In case 2, Domain 1 uses Span 1 for protection and is assigned VLANs 1,2,7 and 9. Domain 2 uses Span 2 for protection and is assigned VLANs 3,5,6 and 10. Domain 3 uses Span 3 for protection and is assigned VLANs 4 and 8. We see from
Considering case 3 were Domain 1 uses Span 1 for protection and is assigned VLANs 1,2,9 and 10. Domain 2 uses Span 2 for protection and is assigned VLANs 3,5,6 and 7. Domain 3 uses Span 3 for protection and is assigned VLANs 4 and 8. As seen from
In consideration of case 4, Domain 1 uses Span 1 for protection and is assigned VLANs 1,2 and 9. Domain 2 uses Span 2 for protection and is assigned VLANs 3,5,6,7 and 10. Domain 3 uses Span 3 for protection and is assigned VLANs 4 and 8. We see from
Considering case 5, Domain 1 uses Span 1 for protection and is assigned VLANs 1,2,9 and 10. Domain 2 uses Span 2 for protection and is assigned VLANs 3,5 and 6. Domain 3 uses Span 3 for protection and is assigned VLANs 4,7 and 8. We see from
Considering the final case 6, Domain 1 uses Span 1 for protection and is assigned VLANs 1,2 and 9. Domain 2 uses Span 2 for protection and is assigned VLANs 3,5,6 and 10. Domain 3 uses Span 3 for protection and is assigned VLANs 4,7 and 8. We see from
It shall be noticed that all of the configurations 1-6 yield a total ring bandwidth of 171 Mbits. Thus, according to the methodology of
Now, it will be determined how the domains should be set accomplishing bandwidth requirements for each span. However, in regard to the methodology given in
The third process shown in
Observing the span bandwidth requirements in the specific example above, it is required at least 64 Mbit/s (if VLAN 7 belongs to Domain 3). Considering that the available bandwidth is 62 Mbit/s for span 1 and 63 Mbit/s for spans 2 and 3 the solutions found for minimise the bandwidth usage are of no use. Next configuration (sorted by ring bandwidth usage) if found by exchanging a protection span for one VLAN. It should be select the exchange that brings the least ring bandwidth increment or increase.
In the example here, the invention finds the increment from the above configurations as being achieved by one of the following exchanges:
VLAN 1—Using Span 2 for protection instead of Span 1;
VLAN 2—Using Span 2 for protection instead of Span 1,
VLAN 3—Using Span 1 for protection instead of Span 2;
VLAN 4—Using Span 3 for protection instead of Span 2;
VLAN 5—Using Span 3 for protection instead of Span 2;
VLAN 6—Using Span 1 for protection instead of Span 2;
In regard to the process in
In the particular example here, the best solution is to use the following configuration.
Domain 1—Using Span 1 for protection—VLANs 1, 2 and 9;
Domain 2—Using Span 2 for protection—VLANs 5, 6 and 10;
Domain 3—Using Span 3 for protection—VLANs 3, 4, 7 and 8.
It should be noticed in the above example that there was an optimal configuration that minimises the ring bandwidth according to each span available bandwidth. In the case that bandwidth requirements were too low (below 59 Mbit/s in this example) a solution will not be found. However, an optimal solution would be found that best fits the bandwidth requirements. In this sense, the invention provides at least a best solution for all cases.
It shall be appreciated that the present invention has been described with reference to specific examples, but that the invention may be practiced with modifications that are within the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
05015994.6 | Jul 2005 | EP | regional |
This application claims priority to U.S. patent application Ser. No. 11/491,344, filed Jul. 21, 2006, which claims the benefit of European application No. 05015994.6 EP filed Jul. 22, 2005, which is incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | 11491344 | Jul 2006 | US |
Child | 12472243 | US |