Automated traffic engineering using adaptive inter-class mixing

Traffic engineering (TE) optimizes the performance of a network by analyzing and regulating the data transmission. Traffic engineering with link coloring (TELIC) was proposed to automatically assign LSPs in multi-protocol label switching domain based on bandwidth and class of service attributes. TELIC dynamically assigns colors to links in the network domain on the basis of reservable bandwidth. Different classes of traffic are entitled for using different colored links. The main contribution of TELIC is segregation of premium and non-premium traffic results in predictable service for premium traffic. After the introduction of TELIC, the Internet engineering task force introduced two important bandwidth constraint models (BCM): maximum allocation model (MAM) and Russian dolls model (RDM). MAM refers to segregation/isolation of class types (CTs) with no channel pre-emption, whereas RDM refers to aggregation by allowing lower classes for using the bandwidth of higher class on availability and pre-emption when required. CT segregation in TELIC is similar to MAM; however, the inherent feature of pre-emption makes TELIC distinct from MAM. This article introduces an RDM version of TELIC by providing controlled traffic mixing by allowing lower classes to share the bandwidth of higher classes whenever possible. Conjunction factor and conjunction threshold are used for controlling the traffic mix. New rule set for bandwidth allocation and sharing are defined. Results show that RDM TELIC provides fair service to non-premium traffic without degrading the service for premium classes, as compared to other shortest distance-based methods.


Introduction
The penetration of broadband resulted in development of numerous Internet applications moving the world toward global sharing and cooperation. Various Internet-enabled applications have been developed. Some of them can process the request in batches like e-mails; however, lot of applications requires real-time updates. Some of such applications are stock-exchange databases, online games, real-time multimedia exchange, and business intelligent applications. Moreover, the entire next generation telecommunication networking infrastructure is being migrated to IP network. Owing to the heavy usage of real-time Internet applications, it is desirable that connectionless networks should be designed in such a way that they work like connection-oriented circuits with guaranteed bandwidth and compliance with service level agreements (SLAs).
To cope with the emerging and most demanding application requirements on Internet, different protocols, compression techniques, and security architectures have been developed. Internet engineering task force (IETF) and different study groups are working on developing new protocols and standards to realize the necessities of real-time applications. Among others, some protocols have taken care of quantitative guarantees to the flows like resource reservation protocol while some have addressed the qualitative guarantees by defining behavior aggregates (BA), e.g., Diffserv (differentiated services architectures) [1,2]. Multi-protocol label switching (MPLS) strikes the middle ground by providing label switched paths (LSP)-based quality of service (QoS) frameworks which ultimately implement traffic engineering (TE) [3].
While MPLS aware Diffserv domains address requirements of QoS applications, TE issue of efficient utilization of bandwidth and network resources still remains a question. Traffic engineering with link coloring (TELIC) is an algorithm for automating the Traffic TE process on MPLS aware Diffserv domains [4,5]. Determining LSPs for different classes of traffic trunks based on dynamically determined prioritized link colors is the core of TELIC. The link coloring scheme in TELIC ensures that premium traffic does not have to share the links with non-premium traffic. While this segregation of traffic is good for premium traffic, it may result in less than desirable allocation for non-premium traffic on the account that premium traffic may be under-utilizing the bandwidth allocated to it.
After the introduction of TELIC in 2002, IETF introduced two important BCMs for Diffserv aware MPLS domain [6]: maximum allocation model (MAM) and Russian doll model (RDM). MAM refers to segregation/ isolation of class types (CTs) where different traffic classes have dedicated channels with no channel preemption. CT segregation in TELIC is similar to MAM; however, the inherent feature of pre-emption in favor of premium classes makes TELIC distinct from MAM. RDM (RFC 4127) [6] refers to aggregation by allowing lower classes to use the bandwidth of higher class on availability with pre-emption when required. It can move up to 64 different order aggregates or CTs; thanks to 3 EXP bits in the shim header of MPLS and 3 bit TOS field. Currently, TELIC defines no specific rules for premium and non-premium classes to share the same link.
This article presents an RDM version of TELIC by introducing traffic mixing, i.e., lower classes can share the bandwidth of higher classes whenever possible. Conjunction factor (CF) and conjunction threshold are used for controlling the mix of traffic on the links. New rule sets for bandwidth allocation and sharing are defined.
The rest of the article is divided into five sections. In the following section, MPLS aware Diffserv network will be discussed in detail. In Section 3, existing work on TELIC is explained, Section 4 covers the proposed model, implementation, and results, and Section 5 presents the conclusion and related future work.

MPLS-AWARE Diffserv
Diffserv emerged as a simple solution for providing QoS implementation. In Diffserv, the traffic is classified into different categories differentiated by TOS field of IP header. Three major CTs are defined in Diffserv which are further prioritized on the basis of values [2]. The major classes defined by Diffserv, in decreasing order of priority, are •EF (expedite forwarding), i.e., CT2 •AF (assured forwarding), i.e., CT1 •DF (default forwarding), i.e., CT0 Here, EF (CT2) is the premium traffic [7] whereas DF (CT0) is the Best-Effort traffic. Diffserv routers employ class-based queuing with different queues for different CTs. Different bandwidths are allocated to different CTs, and if the bandwidth limit is approached by a particular CT, then the corresponding queue is blocked from service till bandwidth becomes available. Diffserv is provided in a Diffserv domain, which is the set of nodes with Per Hop Behavior (PHB) and traffic conditioning capabilities. The boundary routers, i.e., ingress and egress, are used for checking technical specification of packets as per SLAs. Ingress node makes the decision for admission control and classifies the packet to one or more BAs. Each packet is marked with Diffserv code point and boundary nodes do the traffic conditioning by metering, policing, shaping, or dropping based upon the BA.
MPLS is a switching technique based on the use of labels. The boundary nodes are called Label Edge Router (LER) while the core nodes are known as Label Switching Router (LSR) [8]. LER takes the responsibility of admission control as ingress in Diffserv by assigning labels to traffic as according to the forward equivalence class (FEC). Each LSR removes the previous label and makes the forwarding based on its label lookup table; the established path is called LSP which can guarantee certain level of performance and network utilization by implementing TE.
Diffserv and MPLS collectively can solve the IP QoS problem. Diffserv enables scalability in network designs with multiple classes of service and Bas; MPLS-TE, however, facilitates resource reservation, fault-tolerance, and network resource optimization. MPLS-Diffserv-TE combines the advantages of both Diffserv and TE. The result is the capability of providing guaranteed QoS with optimized use of network resources. The QoS delivered by MPLS-Diffserv-TE enables network operators for providing guaranteed services to specific applications such as voice over IP and other real-time application with require performance guarantees.
MPLS networks support Diffserv by mapping Diffserv BAs on to LSPs. MPLS can map Diffserv in several ways. Multiple BAs can be mapped to single LSP or single BA can be mapped to single LSP. When multiple BAs are mapped to single LSP, the method is called E-LSP (EXP is used to specify PHB) and L-LSP when single BA is mapped to single LSP [8].
MPLS-Diffserv-TE supports a maximum of 64 various combinations which can be distributed in 8 multiple CTs with 8 priority levels. At one extreme, there may be single CT with eight priority levels, very much like the existing TE implementation. At the other extreme, there may be eight distinct CTs, with a single priority level. Figure 1 shows the table of all possible classes with their  priorities. Some sample TE classes are picked from TE0  through TE7, which are shown on left side of the table. Several constrained routing algorithms have been introduced for MPLS-Diffserv domain. These algorithms integrate constraint-based routing with TE to carve out LSP tunnels that can carry aggregated or uni-class traffic while ensuring a certain level of bandwidth availability and resource utilization. It is desirable that these algorithms not only focus on engineering the traffic on MPLS-Diffserv domain, but also automate the engineering process.

TELIC
TELIC's objective is to automatically establish LSPs for incoming traffic trunks in MPLS aware Diffserv domain with constraint-based routing that achieves targets of TE for different traffic classes [4,6].
For using TELIC, each LSP request specifies the required amount of bandwidth as well as the FEC. Representing the domain as a graph, TELIC finds cost of each link in the graph using a cost function with bandwidth, reliability, and delay as parameters. Link costs are mapped to various colors that form a prioritized hierarchy. The color values of silver, white, green, yellow, and red with corresponding cost metrics are indicated in [4]. The bandwidth that can be reserved on each type of link is set empirically and all the links initially are set to either green or silver. Gradually, silver links are converted to white and green are converted to yellow and finally to red when LSPs are assigned through them. The algorithm divides the entire domain graph into several sub-graphs based on link colors.
Based on the information in the requested traffic trunk, the algorithm tries to locate LSP using shortest path through a sub-graph that best meets the request [4]. On determining LSP, it is registered in master LSP table and the link color is updated.
For bandwidth sharing and congestion avoidance, a conjunction degree (CD) is defined which takes care of number of different types of LSPs passing over a link. Premium traffic is routed over links with low CD.
Load balancing on the network, avoidance of heavily utilized links, and CT segregation are some of the targets achieved by TELIC. TELIC improves bandwidth allocation and network resource utilization as compared to commonly used shortest distance algorithm (SHORTD) and automates the process of TE. However, there are certain limitations in TELIC algorithm: •Premium traffic links generally do not share their redundant bandwidth with other traffic due to CT segregation; this sometime leads to poor utilization of bandwidth and network resources.
•Initially, AF cannot be assigned to the silver links resulting in more rejections of AF traffic.
•CD is calculated on number of LSPs without the consideration of bandwidth used by each.
•TELIC preferably allocates the link bandwidth to premium traffic resulting in rejection and delay of other CTs. It pre-empts allocated DF requests if it cannot find the path for current outstanding premium traffic requests.
These limitations are addressed in the proposed enhancement, RDM TELIC as described next.

RDM TELIC
The MAM and RDM BCMs were described briefly in previous sections. MAM is the most intuitive BCM which maps one bandwidth constraint (BC) to a single CT. Practically, the link is distributed into multiple channels as shown in Figure 2. MAM results in the under utilization of link because of not sharing the bandwidth among multiple classes; however, MAM bears the advantage of guaranteed bandwidth for premium classes.
RDM can be symbolized with Russian doll toy, where one smaller doll BC(n) can be contained in the bigger doll (BC(n -1)) which may further be compacted (contacted) in a yet bigger doll (BC(n -2)), and so on. RDM has the advantage of the use of bandwidth by lower classes on availability and pre-emption when required. Thus, link utilization is increased as compared to MAM. Figure 3 illustrates the bandwidth allocation in RDM. Figure 1 Multiple CT with different priorities [6]. RDM TELIC not only provides compliance between TELIC and IETF BCMs, but also furnishes the missing parts of TELIC by allocating CT1 (i.e., AF) on silver links and introducing the mechanism for controlled preemption of best effort traffic. Some features which differentiate RDM TELIC from the existing work on TELIC are •Bandwidth allocation procedure is altered; new rule sets are defined for making it compliant with RDM.
•In TELIC, AF is initially not allocated on silver links. This restriction is removed in RDM TELIC resultantly improving the allocation of AF on multiple sub-domains.
•TELIC pre-empts DF allocated LSP if it cannot find a path with enough bandwidth to satisfy an outstanding premium request. RDM TELIC defines the rule set for controlled pre-emption of best-effort traffic.
•CD of links is enhanced with threshold values to determine and possibly avoid congestion on the links.
The algorithm for RDM TELIC is presented in Table  1.
CD identifies the degree of sharing between different traffic classes on each link. It is calculated as where CD is the degree of the conjunction of the link i, CD2 refers to the bandwidth of EF shared by AF and DF, and CD1 is the bandwidth of AF shared by DF.
Since, bandwidth of the lowest class (i.e., DF) is not consumed by higher classes (i.e., EF, AF); thus, it is not taken into consideration while calculating the CD of a link. Traffic is passed on the link having lowest current CD.
In order to have controlled mixing of multiple class of service on the same link as well as help in congestion avoidance, conjunction threshold is defined. It is calculated as where C th is the threshold limit of each of the CT calculated individually, α is the co-efficient based on the empirical values which can be set by domain administrator, and B max is the maximum reservable bandwidth. The sum of all the individual class thresholds gives the threshold of the link.
CF of the domain is the sum of the CDs of individual links in the domain. The CF for the domain consisting of n links can be defined as [4] The LSP will be established on the sub-graph having low CF value, leading to the optimum network utilization and balanced load on the network.   • (3) For EF, compare against available limit on the subgraphs that includes silver, white and green links in order. Check if it is used by lower classes, if yes then go for pre-emption and route the LSP with a subgraphs that includes silver, white and green links in that order otherwise queue the request at lower position • (4) For AF, compare against available limit on the subgraphs that includes green, yellow, white & silver links in order. If the limit is available, then check if it is used by lower classes, if yes then go for pre-emption and route the LSP with a subgraphs that includes silver, white and green links in that order otherwise queue the request at the lower position. Route the LSP with a subgraphs that includes green, yellow white in that order • (5) If it is DF, route the LSP with a subgraphs that includes red, yellow and green links in that order Upon LSP installation, the link colors are updated as in TELIC. In addition, some new rules are defined to make it compliant with RDM, for example: •Configurable bandwidth limits are defined for each class of service.
•DF traffic, i.e., CT0 is permitted to initially be allocated on silver links which increase the allocation of CT0.
•Degree of sharing is controlled by conjunction threshold.
•If higher class arrives and its bandwidth resources is currently being used by lower CT and there is no other path available, first the availability of bandwidth after potential pre-emption is confirmed and then the lower class is pre-empted. The pre-empted lower class is placed at the tail of queue to wait for its turn of allocation.

Implementation and results
This section compares the performance of RDM TELIC with two algorithms: TELIC and SHORTD. While TELIC has been discussed above, some explanation of SHORTD is in order here. SHORTD uses Dijkstra's algorithm for finding the shortest weighted path between the ingress and the egress router. The path weight (i.e., cost) is calculated as the aggregate of link weights in the path where weight of an individual link is equal to the currently available bandwidth on the link. For a path consisting of n links, the cost is Unlike RDM TELIC which heuristically splits the domain graph into several sub-graph to account for different class priorities, SHORTD takes into consideration the entire domain graph while deciding the traffic paths resulting in chaotic behavior sometimes, especially in case of EF traffic.
The simulation which is implemented in C++ works on static traffic sets generated using randomized multiple CT requests with uniform distribution. The performance of RDM TELIC is measured on the basis of randomized traffic sets as mentioned above on multiple domain, i.e., single path (SP), multipath (MP), several paths and irregular several paths (ISP), fish, and duck. The measured attributes are allocation, rejection, and pre-emption of CT1 and CT2 traffic.
The experiments have been carried out starting 80-20 split of requested traffic set in which 20% out of a trunk is carrying CT2 requests and the remaining 80% further split into 70-30 by assigning 30% to CT1. The ratio in different traffic trunks is altered by increasing CT2 traffic request. The experiment has been carried on around 20 traffic sets.
TELIC and RDM TELIC assign link colors based on cost function which involves several parameters collected from individual links in the path where C i is cost of ith path that has n links, B j is bandwidth on link j, D j is delay of link j, and R j is reliability of link j.
These results are discussed here keeping in view of three domains, i.e., ISP, fish, and duck networks, respectively. The bandwidth allocation trend in case of ISP domain is plotted in Figures 5, 6, and 7 for CT2, CT1, and CT0, respectively.

Results portfolio for ISP domain
It is evident from Figure 5 that all the bandwidth requests for CT2 are assigned by both TELIC and RDM TELIC. Since CT2 is the premium class, the same trend is highly desirable. On the other hand, SHORTD as shown has lesser allocation to CT2.
For class type CT1, the requested bandwidth is increased from first to last traffic trunk, It has been found that the allocation in RDM TELIC is almost 100%; however, TELIC has fluctuating trend in multiple traffic set for the selected ISP domain whereas SHORTD also has unpredicted behavior. In CT0, the requested bandwidth was kept high at the start and then the allocation for CT1 and CT2 is increased. It has been observed that allocation is on rising trend in case of TELIC; however, the allocation with respect to RDM TELIC is a bit low as shown in Figure  7.
It is evident from the above-mentioned graphs that RDM TELIC is performing nice for ISP domain in case of class-based service; however, more rejection in case of best-effort traffic (CT0) is observed. Figure 8 shows an example fish domain with multiple hops and links. There are multiple ingress and egress nodes in fish topology, which are shown here. The results are compiled by assigning on node as ingress and one as egress.

Results portfolio for fish domain
The allocation trend for different CTs is shown in Figures 9,10, and 11, respectivly.
Allocation trend for CT2 is 100% in RDM TELIC as well as in TELIC; however, the curve is showing downward tilts on some request in SHORTD. This may be due to the order in which the requests arrive. Figure 10 illustrates the allocation trend of CT1 for fish domain. It is evident fromt the graph that the allocation of CT1 is maximum in RDM TELIC; TELIC however has the fluctuating trend in the allocation and in some case none of the requests has been allcoated. It obviously depends heavily upon the ratio of green links on the domain. Figure 11 shows the allocation of least priority class, i. e., CT0. It is evident form the graph that TELIC has maximum allocation for CT0.     egress nodes in duck topology, which are shown here. The results are compiled by assigning node (1) as ingress and node (9) as egress.

Results portfolio for duck domain
Allocation in case of duck is shown in Figures 13, 14, and 15.
Allocation of CT2 in all of the tree algorithms is shown in Figure 13. It is understandable that because of bottleneck link 4 9, the allocation trend of premimum traffic is a bit lower than requested. Still, allocation in case of RDM TELIC is slightly higher than TELIC and the obvious differnce can be observed in case of SHORTD.
Similarly, the results for CT1 are shown in Figure 14. RDM TELIC again has the higher allocation for CT1 as compared to TELIC and SHORTD as shown in Figure 14. The allocation for CT0 in duck is high in TELIC and SHORTD as compared to RDM TELIC.
The above results prove that RDM TELIC provides better performance than both TELIC and SHORTD in terms of allocation, rejection, and pre-emption of traffic for class-based traffic such as CT1 and CT2.

Conclusion and future work
We have worked on enhancing TELIC, a bandwidth allocation algorithm for MPLS-Diffserv domains to      increase the overall BW utilization. An improved TE algorithm RDM TELIC has been proposed. This algorithm applies the RDM to TELIC for bandwidth allocation resulting in better utilization of network bandwidth. The implementation of the algorithm is done in C++. The results are analyzed on different domains and traffic sets as discussed above, showing performance improvement over SHORTD and TELIC algorithm.
There are other algorithms proposed for MPLS domains in the literature such as minimum interference routing (MIR) [9]. However, MIR deals with different issues such as multiple ingress and multiple egress network domains. Its considerations are to route the LSPs in a way such that other ingress-egress pairs are protected from interference. Therefore, we have not compared RDM TELIC with MIR. In addition, RDM TELIC supplements the algorithms available for implementation of MPLS-TE. MPLS-TE is the whole framework of TE for the domain that includes measurement, modeling, characterization, and control of network traffic. It includes constrained shortest path first (CSPF) (constrained routing), protection routing, and load balancing. CSPF routing algorithm uses maximum bandwidth available (MBW) as one of the tie breakers for choosing links. RDM TELIC focuses on bandwidth allocation and routing. We have compared RDM TELIC's results with MBW (i.e., SHORTD) showing performance improvement.
Future study may include incorporating LSP holding time to entertain bulk of requests to compute the delay and improvement of the algorithm performance. LSP holding times would allow us to run the algorithm for extended period of time, thus providing clearer feedback of its performance. Pre-emption priorities in different classes of service may also be integrated to handle larger number of classes.