Summary: New Algorithms for Internet Traffic Engineering by Sireen Malik (MS Thesis) What is the work about? The author has done comparison between offline TE algorithm and online TE algorithm. Also The author suggest a new hybrid approach where it uses normal routing (as long as bandwidth is guaranteed using IP) but when congestion occurs on a link MPLS is used to avoid that particular link. Author suggests using MPLS only when it is needed so that signaling over-head and connection maintenance overheads can be avoided. The author has developed his own simulator in Java. For offline optimization he has used Genetic Algorithm and form online he has used relax weights shortest path algorithm. The author has generated synthetic network topologies, traffic matrices (TMs), and capabilities matrices (have not use any TM generation techniques). Author has given background information about MPLS which is not included in this summary. Online Traffic Engineering Algorithm: The algorithm does TE on real-time bases. The author use MPLS to avoid congested links, balance the network and improve network utilization. In normal cases it keeps following normal IGP routing. The guaranteed bandwidth is considered as QOS metric. The author have use Relaxed Weights Shortest Path Algorithm (RW-SPF). It is just like SPF but only difference is that the weight as assigned dynamically according to link utilization. Hence Link weight = utilization = load/capacity (which is dynamic) Fortz and Thorup proposed the relaxation as following (la is the load, ca the capacity and Фa the cost) Hence Фa is equal to 1 for la/ca >= 0 & la/ca < 1/3 3 for la/ca >= 1/3 & la/ca < 2/3 and so on…. Offline Optimization Algorithm: Objective Function: It is minimization of maximum link utilization. Transport Constraints: It is to ensure that a flow cross a node “only once”. It is to avoid loop and congestion. Capacity Constraints: It is to ensure that a link does not exceed its capacity or certain limit. Please note that as long as this constraint can be respected no effort is made to calculate explicit paths. It is this violation which is recognized as a trigger point for calculation of an overriding path over the congested link. Utilization Constraints: They guarantee that traffic over a link does not exceed certain utilization. Author relax this constrain based on the Fortz and Thorup relaxation. Delay Constraints: It is to ensure that for each flow its upper limit of delay does not violates. This constrain is not used in this project. Algorithm Description: The algorithm consists of many chromosomes and each chromosome has many genes. In this case (network optimization) genes can be thought of as having weight of a link (each chromosome is unique). For example in network having 10 links each chromosome will have 10 genes in it and we can have any number N chromosomes. Now here are the steps of algorithm. Step 1: In start all chromosomes are generated with random genes (link weights). Step 2: OSPF/ISIS generates flow using TM for each of the chromosomes and if congestion then MPLS to avoid such link. Step 3: Then based on maximum links utilization all the chromosomes are sorted in order. Step 4: Now based on some value ALPHA and BETA the list (in step 3) is divided in 3 classes (class A, B and C). (example if Alpha is 30% and BETA is 70% and total chromosome were 10 then class A will have 3 upper best chromosomes, class B will have 4 (70%-30% = 40%) next chromosomes and finally class C will have last 3 of them). Step 5: Now we have to generate new traffic. Old class A is accepted “as-is” in the new population (called Elitism). Class B chromosome will be crossover and mutation (defined below) of one parent from old class A and other from Class B or C. Class C is discarded and a new Class C is generated (randomly). Step 6: Go back to step 2 unit “numGen” (say 200) number of generations. Crossover: It is basically exchanging genes between two chromosomes. It can be single-point, two point and uniform crossover etc. For example Chromosome A: 5 10 3 4 7 1 Chromosome B: 4 8 9 0 5 8 We decide to cross-over at 2rd position from right. The resultant chromosome is as follows. Chromosome A: 5 10 3 4 1 7 Chromosome B: 4 8 9 0 8 5 Mutation Chromosome A: 5 10 3 4 7 1 Chromosome B: 4 8 9 0 5 8 We decide to cross-over at 2rd position from right. The resultant chromosome is as follows. Chromosome A: 5 10 3 4 5 1 Chromosome B: 4 8 9 0 7 8