evaluation of load balancing algorithms in ip...

102
Department of Science and Technology Institutionen för teknik och naturvetenskap Linköpings Universitet Linköpings Universitet SE-601 74 Norrköping, Sweden 601 74 Norrköping Examensarbete LITH-ITN-KTS-EX--05/004--SE Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera Emil Hasselström Therese Sjögren 2005-02-04

Upload: others

Post on 23-Apr-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Department of Science and Technology Institutionen för teknik och naturvetenskap Linköpings Universitet Linköpings Universitet SE-601 74 Norrköping, Sweden 601 74 Norrköping

ExamensarbeteLITH-ITN-KTS-EX--05/004--SE

Evaluation of Load BalancingAlgorithms in IP Networks - A case

study at TeliaSoneraEmil HasselströmTherese Sjögren

2005-02-04

Page 2: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

LITH-ITN-KTS-EX--05/004--SE

Evaluation of Load BalancingAlgorithms in IP Networks - A case

study at TeliaSoneraExamensarbete utfört i kommunikation- och transportsystem

vid Linköpings Tekniska Högskola, CampusNorrköping

Emil HasselströmTherese Sjögren

Handledare Per LindbergExaminator Di Yuan

Norrköping 2005-02-04

Page 3: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

RapporttypReport category

Examensarbete B-uppsats C-uppsats D-uppsats

_ ________________

SpråkLanguage

Svenska/Swedish Engelska/English

_ ________________

TitelTitle

FörfattareAuthor

SammanfattningAbstract

ISBN_____________________________________________________ISRN_________________________________________________________________Serietitel och serienummer ISSNTitle of series, numbering ___________________________________

NyckelordKeyword

DatumDate

URL för elektronisk version

Avdelning, InstitutionDivision, Department

Institutionen för teknik och naturvetenskap

Department of Science and Technology

2005-02-04

x

x

LITH-ITN-KTS-EX--05/004--SE

http://www.ep.liu.se/exjobb/itn/2005/kts/004/

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Emil Hasselström, Therese Sjögren

The principle of load balancing is to distribute the data load more evenly over the network in order toincrease the network performance and efficiency. With dynamic load balancing the routing is updated atcertain intervals. This thesis was developed to evaluate load balancing methods in the IP-network ofTeliaSonera.

Load balancing using short path routing, bottleneck load balancing and load balancing using MPLS havebeen evaluated. Short path routing is a flow sharing technique that allows routing on paths other than theshortest one. Load balancing using short path routing is achieved by dynamic updates of the linkweights. Bottleneck is in its nature a dynamic load balancing algorithm. Unlike load balancing usingshort path routing it updates the flow sharing, not the metrics. The algorithm uses information aboutcurrent flow sharing and link loads to detect bottlenecks within the network. The information is used tocalculate new flow sharing parameters. When using MPLS, one or more complete routing paths (LSPs)are defined at each edge LSR before sending any traffic. MPLS brings the ability to perform flowsharing by defining the paths to be used and how the outgoing data load is to be shared among these.

The model has been built from data about the network supplied by TeliaSonera. The model consists of atopology part, a traffic part, a routing part and cost part. The traffic model consists of a OD demandmatrix. The OD demand matrix has been estimated from collected link loads. This was done withestimation models; the gravity model and an optimisation model.

The algorithms have been analysed at several scenarios; normal network, core node failure, core linkfailure and DWDM system failure. A cost function, where the cost increases as the link load increaseshas been used to evaluate the algorithms. The signalling requirements for implementation of the loadbalancing algorithms have also been investigated.

Load balancing, Traffic engineering, MPLS, OD Matrix, Simulation

Page 4: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Upphovsrätt

Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare –under en längre tid från publiceringsdatum under förutsättning att inga extra-ordinära omständigheter uppstår.

Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner,skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat förickekommersiell forskning och för undervisning. Överföring av upphovsrättenvid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning avdokumentet kräver upphovsmannens medgivande. För att garantera äktheten,säkerheten och tillgängligheten finns det lösningar av teknisk och administrativart.

Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman iden omfattning som god sed kräver vid användning av dokumentet på ovanbeskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådanform eller i sådant sammanhang som är kränkande för upphovsmannens litteräraeller konstnärliga anseende eller egenart.

För ytterligare information om Linköping University Electronic Press seförlagets hemsida http://www.ep.liu.se/

Copyright

The publishers will keep this document online on the Internet - or its possiblereplacement - for a considerable time from the date of publication barringexceptional circumstances.

The online availability of the document implies a permanent permission foranyone to read, to download, to print out single copies for your own use and touse it unchanged for any non-commercial research and educational purpose.Subsequent transfers of copyright cannot revoke this permission. All other usesof the document are conditional on the consent of the copyright owner. Thepublisher has taken technical and administrative measures to assure authenticity,security and accessibility.

According to intellectual property law the author has the right to bementioned when his/her work is accessed as described above and to be protectedagainst infringement.

For additional information about the Linköping University Electronic Pressand its procedures for publication and for assurance of document integrity,please refer to its WWW home page: http://www.ep.liu.se/

© Emil Hasselström, Therese Sjögren

Page 5: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

2

Preface This master thesis has been carried out at TeliaSonera in Farsta. In this section we would like to express our thanks to the people who helped us during the working process. We would especially like to thank Per Lindberg, our supervisor at TeliaSonera, for the many hours he spent on helping us. Without Per, this thesis work would not have been possible. We would also like to thank our examiner at Linköpings University, Di Yuan, for introducing us to this thesis work and for giving us valuable comments during the working process. Also, we want to express our thanks to Clas Rydergren at Linköpings University for helping us with the optimisation part of the master thesis. Furthermore we would like to thank Thomas Eriksson and Erik Åman at TeliaSonera for their valuable suggestions and comments on our work. Finally we want to thank Mikael Henriksson and Jani Väinölä for their company and support.

Page 6: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

3

Abstract The principle of load balancing is to distribute the data load more evenly over the network in order to increase the network performance and efficiency. With dynamic load balancing the routing is updated at certain intervals. Load balancing has been an issue in the international research for a long time. However, though theoretical studies have been many, the technique is only implemented in simplified versions. This thesis was developed to evaluate load-balancing methods in the IP-network of TeliaSonera. Load balancing using short path routing, bottleneck load balancing and load balancing using MPLS have been evaluated. Short path routing is a flow sharing technique that allows routing on paths other than the shortest one. Load balancing using short path routing is achieved by dynamic updates of the link weights. Bottleneck is in its nature a dynamic load balancing algorithm. Unlike load balancing using short path routing it updates the flow sharing, not the metrics. The algorithm uses information about current flow sharing and link loads to detect bottlenecks within the network. The information is used to calculate new flow sharing parameters. When using MPLS, one or more complete routing paths (LSPs) are defined at each edge LSR before sending any traffic. MPLS brings the ability to perform flow sharing by defining the paths to be used and how the outgoing data load is to be shared among these. The model has been built from data about the network supplied by TeliaSonera. The model consists of a topology part, a traffic part, a routing part and cost part. The traffic model consists of a OD demand matrix. The OD demand matrix has been estimated from collected link loads. This was done with estimation models; the gravity model and an optimisation model. The algorithms have been analysed at several scenarios; normal network, core node failure, core link failure and DWDM system failure. A cost function, where the cost increases as the link load increases has been used to evaluate the algorithms. The short path algorithm generates the lowest total cost during failure in all scenarios. But the algorithm has a slow convergence time, both during and after the failure. The bottleneck algorithm is a stable algorithm and it has a short convergence time. However, the total cost is only slightly decreased and the update directly after the error gives an undesirable cost peak. The MPLS algorithm is the algorithm with the shortest convergence time. But the resulting routing is heavily oscillating and the cost is only slightly decreased. The signalling requirements for implementation of the load balancing algorithms have also been investigated. The short path algorithm updates the link weights. Each node needs information about the link loads of the outgoing links and their present weight. The bottleneck algorithm changes the load sharing at every node. Information needed is the current link load and current bottleneck load sharing The MPLS load balancing algorithm changes the load sharing between the predefined paths. Information needed by the edge router is the load of the most congested link in the path and the current flow sharing.

Page 7: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

4

Table of Contents

1 INTRODUCTION............................................................................................................................8

1.1 BACKGROUND................................................................................................................................8 1.2 OBJECTIVE .....................................................................................................................................8 1.3 METHOD.........................................................................................................................................8 1.4 REPORT OUTLINE ...........................................................................................................................9

2 ROUTING FUNDAMENTALS ...................................................................................................10

2.1 BASIC CONCEPTS..........................................................................................................................10 2.2 ROUTING PROTOCOLS ..................................................................................................................10

2.2.1 Distance vector routing .....................................................................................................10 2.2.2 Link state routing...............................................................................................................11

2.3 AUTONOMOUS SYSTEMS..............................................................................................................11 2.4 TRAFFIC ENGINEERING.................................................................................................................12 2.5 MULTIPROTOCOL LABEL SWITCHING .........................................................................................13

2.5.1 Fundamentals of MPLS.....................................................................................................13 2.5.2 Traffic Engineering in MPLS ............................................................................................14

3 THE FLUID FLOW MODEL ......................................................................................................16

3.1 BASIC DEFINITIONS ......................................................................................................................16 3.2 EXTENDED DEFINITIONS ..............................................................................................................17

4 LOAD BALANCING.....................................................................................................................19

4.1 INTRODUCTION.............................................................................................................................19 4.1.1 Static and dynamic load balancing...................................................................................19

4.2 LOAD BALANCING USING SHORT PATH ROUTING.........................................................................20 4.3 BOTTLENECK LOAD BALANCING..................................................................................................22 4.4 LOAD BALANCING USING MPLS..................................................................................................23

5 SYSTEM DESCRIPTION ............................................................................................................26

5.1 TELIASONERA ..............................................................................................................................26 5.1.1 TeliaSonera in Sweden ......................................................................................................26 5.1.2 TeliaSonera International Carrier....................................................................................26

5.2 SYSTEM OVERVIEW......................................................................................................................27 5.3 TOPOLOGY OF TELIANET.............................................................................................................27

5.3.1 TeliaNet in perspective to the Internet..............................................................................27 5.3.2 Topological principle ........................................................................................................28 5.3.3 Access Level.......................................................................................................................28 5.3.4 Distribution Level..............................................................................................................28 5.3.5 Core Level..........................................................................................................................29 5.3.6 Peering level ......................................................................................................................29 5.3.7 Path diversification principle............................................................................................29

5.4 TRAFFIC CHARACTERISTICS OF TELIANET ..................................................................................30 5.4.1 Data flows..........................................................................................................................30 5.4.2 Traffic variations ...............................................................................................................31

5.5 ROUTING IN TELIANET ................................................................................................................32 5.5.1 Weights ..............................................................................................................................32 5.5.2 MPLS usage in TeliaNet....................................................................................................32

6 MODEL SPECIFICATION..........................................................................................................33

6.1 LEVEL OF DETAIL .........................................................................................................................33 6.2 MODEL STRUCTURE .....................................................................................................................33 6.3 ASSUMPTIONS ..............................................................................................................................34 6.4 MODEL INPUT AND OUTPUT .........................................................................................................35 6.5 DATA COLLECTION.......................................................................................................................36

6.5.1 Data requirements .............................................................................................................36

Page 8: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

5

6.5.2 Data source........................................................................................................................36 6.5.3 Data reliability ..................................................................................................................37

7 TOPOLOGY MODEL ..................................................................................................................38

7.1 TOPOLOGICAL CONCEPTS.............................................................................................................38 7.2 DISTRIBUTION-LEVEL ..................................................................................................................38 7.3 CORE-LEVEL ................................................................................................................................39 7.4 PEERING-LEVEL............................................................................................................................39 7.5 VERIFICATION ..............................................................................................................................40

8 TRAFFIC MODEL........................................................................................................................41

8.1 PROBLEM DEFINITION ..................................................................................................................41 8.1.1 Source and sink magnitude ...............................................................................................41

8.2 GRAVITY MODEL APPROACH........................................................................................................42 8.2.1 Evolved gravity model .......................................................................................................42

8.3 OPTIMISATION MODEL APPROACH ...............................................................................................43 8.3.1 Starting approach..............................................................................................................44 8.3.2 Lagrange relaxation approach .........................................................................................45

8.4 EVALUATION OF THE ESTIMATED OD DEMAND MATRICES .........................................................46 8.4.1 Evaluation of the gravity model ........................................................................................47 8.4.2 Evaluation of the optimisation model ...............................................................................48 8.4.3 Conclusion .........................................................................................................................50

8.5 ESTIMATING THE OD DEMAND MATRIX VARIATIONS..................................................................50 8.5.1 Periodic demand variations ..............................................................................................51 8.5.2 OD pair individual demand variations .............................................................................51 8.5.3 Conclusion .........................................................................................................................52

9 COST MODEL...............................................................................................................................53

9.1 INTRODUCTION.............................................................................................................................53 9.2 DEFINITION ..................................................................................................................................54

9.2.1 Chosen parameters............................................................................................................55

10 ROUTING MODEL ......................................................................................................................56

10.1 GENERAL ROUTING MODEL.....................................................................................................56 10.1.1 Route-data calculation ......................................................................................................58 10.1.2 Flow and loss calculation .................................................................................................58

10.2 SHORTEST PATH ROUTING WITH ECMP..................................................................................59 10.3 LOAD BALANCING USING SHORT PATH ROUTING ....................................................................59

10.3.1 Load balancing route data calculation.............................................................................59 10.3.2 Event-triggered route data calculation.............................................................................62

10.4 BOTTLENECK LOAD BALANCING.............................................................................................62 10.4.1 Load balancing route data calculation.............................................................................62 10.4.2 Event-triggered route data calculation.............................................................................62

10.5 LOAD BALANCING USING MPLS.............................................................................................63 10.5.1 Load balancing route data calculation.............................................................................63 10.5.2 Event-triggered route data calculation.............................................................................64

11 ANALYSIS......................................................................................................................................65

11.1 SCENARIOS..............................................................................................................................65 11.1.1 Normal network .................................................................................................................65 11.1.2 Core node failure...............................................................................................................65 11.1.3 Core link failure ................................................................................................................66 11.1.4 DWDM system failure .......................................................................................................66

11.2 EVALUATION METHODS ..........................................................................................................66 11.3 SHORTEST PATH ROUTING WITH ECMP..................................................................................66 11.4 LOAD BALANCING USING SHORT PATH ROUTING ....................................................................67

11.4.1 Normal network .................................................................................................................67 11.4.2 Core node failure...............................................................................................................68 11.4.3 Core link failure ................................................................................................................73 11.4.4 DWDM system failure .......................................................................................................74

Page 9: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

6

11.5 BOTTLENECK LOAD BALANCING.............................................................................................74 11.5.1 Normal network .................................................................................................................74 11.5.2 Core node failure...............................................................................................................75 11.5.3 Core link failure ................................................................................................................76 11.5.4 DWDM system failure .......................................................................................................77

11.6 LOAD BALANCING USING MPLS.............................................................................................78 11.6.1 Normal network .................................................................................................................78 11.6.2 Core node failure...............................................................................................................78 11.6.3 Core link failure ................................................................................................................80 11.6.4 DWDM system failure .......................................................................................................81

11.7 ANALYSIS SUMMARY ..............................................................................................................81 11.7.1 Core node failure...............................................................................................................82 11.7.2 Core link failure ................................................................................................................83 11.7.3 DWDM system ...................................................................................................................83

12 SIGNALLING ANALYSIS...........................................................................................................85

12.1 BASICS OF SIGNALLING ...........................................................................................................85 12.2 SIGNALLING REQUIREMENTS ..................................................................................................85

12.2.1 Short path load balancing .................................................................................................85 12.2.2 Bottleneck load balancing.................................................................................................85 12.2.3 Load balancing using MPLS.............................................................................................86

13 CONCLUSIONS ............................................................................................................................87

13.1 EVALUATION OF THE LOAD BALANCING ALGORITHMS...........................................................87 13.1.1 Load balancing using short path routing..........................................................................87 13.1.2 Bottleneck load balancing.................................................................................................88 13.1.3 Load balancing using MPLS.............................................................................................88

13.2 VALIDITY OF RESULTS ............................................................................................................89 13.3 RECOMMENDATIONS FOR FUTURE WORK................................................................................89

List of Tables Table 8.1. Result of evaluation of traffic matrix generated by gravity model..........................................47 Table 8.2. Result of evaluation of traffic matrix generated by optimisation model.................................48 Table 10.1. Example Traffic demand ........................................................................................................93 Table 10.2. Example flow and loss............................................................................................................95 Table 12.1. Signalling and calculation requirements ...............................................................................86

List of Figures Figure 1.1. The project method ...................................................................................................................9 Figure 2.1. Autonomous systems ...............................................................................................................12 Figure 2.2. MPLS network structure.........................................................................................................14 Figure 4.1. Short path flow sharing ..........................................................................................................21 Figure 5.1. TeliaNet’s relation to the rest of Internet...............................................................................28 Figure 5.2. The topological principle of TeliaNet ....................................................................................28 Figure 5.3. The diversification principle of TeliaNet ...............................................................................30 Figure 5.4. The access level local traffic ..................................................................................................31 Figure 5.5. Daily flow variations for a link ..............................................................................................31 Figure 5.6. Weekly flow variations for a link............................................................................................32 Figure 6.1. Model structure.......................................................................................................................34 Figure 6.2. Model input and output ..........................................................................................................35 Figure 7.1. Virtual node replacement .......................................................................................................39 Figure 7.2. Virtual peering node replacement..........................................................................................39 Figure 8.1. Illustration of the gravity model results. ................................................................................48 Figure 8.2. Mean absolute error for the optimisation model ...................................................................49 Figure 8.3. Mean relative error for the optimisation model ....................................................................49 Figure 8.4. Total demand for the optimisation model ..............................................................................49

Page 10: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

7

Figure 8.5. Illustration of the optimisation model results, 2µ =100.......................................................50 Figure 8.6. Daily traffic variations ...........................................................................................................51 Figure 9.1. A cost model............................................................................................................................53 Figure 9.2. The cost model ........................................................................................................................55 Figure 10.1. The composite of time variant topology data.......................................................................56 Figure 10.2. Functionality of the routing model.......................................................................................57 Figure 10.3. Cost and weight functions ....................................................................................................60 Figure 10.4. Derived cost and weight function.........................................................................................61 Figure 10.5. Coloured LSPs ......................................................................................................................63 Figure 11.1. Cost of Shortest path ECMP ................................................................................................67 Figure 11.2. Cost of short path in initial network ....................................................................................68 Figure 11.3. Cost of short path at core node failure ................................................................................69 Figure 11.4. Close up of cost with short path during core node failure ..................................................69 Figure 11.5. Close up of cost with short path after core node failure .....................................................70 Figure 11.6. Cost of short path at core node failure ................................................................................70 Figure 11.7. Cost of load balancing using short path with various α values during core node failure 71 Figure 11.8. Load of the maximum loaded link with short path load balancing at core node failure....72 Figure 11.9. Load of the maximum loaded link with a modified version of short path load balancing at

core node failure ..............................................................................................................................72 Figure 11.10. Cost of modified version of short path load balancing at core node failure ....................73 Figure 11.11. Cost of short path load balancing during core link failure...............................................73 Figure 11.12. Cost of short path load balancing during DWDM failure.................................................74 Figure 11.13. Cost of bottleneck load balancing during normal network conditions .............................75 Figure 11.14. Cost of bottleneck load balancing during core node error ...............................................75 Figure 11.15. Load of the maximum loaded link with bottleneck load balancing at core node failure..76 Figure 11.16.Cost of Bottleneck load balancing during core link failure .............................................77 Figure 11.17. Cost of bottleneck load balancing during DWDM system failure.....................................77 Figure 11.18. Cost of MPLS load balancing during normal network conditions....................................78 Figure 11.19. Cost of MPLS load balancing during core node failure....................................................79 Figure 11.20. Close up of cost generated by MPLS load balancing during core node failure ...............79 Figure 11.21. The load of the maximum loaded link with MPLS load balancing during core node

failure ...............................................................................................................................................80 Figure 11.22. Cost of MPLS load balancing during core link failure ....................................................80 Figure 11.23. Cost of MPLS load balancing during DWDM system failure ...........................................81 Figure 11.24. Cost of all algorithms during core node failure ................................................................82 Figure 11.25. Cost of all algorithms during core link failure ..................................................................83 Figure 11.26. Cost of all algorithms during DWDM system failure........................................................83

Appendices APPENDIX A – ABBREVIATIONS APPENDIX B – FLOW AND LOSS CALCULATION EXAMPLE APPENDIX C – SIMULATION RESULTS

Page 11: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

8

1 Introduction

1.1 Background Internet is today a well spread technique and an information technology used by many. The Internet infrastructure in Sweden is highly developed. As the number of customers as well as the dependence of Internet increase, the more pressure is set to the Internet Service providers. The customers demand good service, high bandwidth and a well functioning system. As the number of customer’s increases the Internet Service Providers need to extend their infrastructure. It is also of importance that the network is robust in cases of error situations. Load balancing is a method to use the existing infrastructure more efficiently. The traffic gets more evenly spread in the network and congestion is avoided. Load balancing can also be useful at error situations, it redirect the traffic more efficiently than the standard routing protocol does. Load balancing has been an issue in the international research for over 25 years. However, though the theoretical studies have been many, the technique is only implemented in simplified versions. At TeliaSonera load-balancing methods have been studied a longer time. Simulation of load balancing algorithms have been performed on small fictive networks. This thesis was developed to evaluate load-balancing methods in the IP-network of TeliaSonera.

1.2 Objective The purpose of this master thesis is to evaluate the performance of different load balancing methods in a model of TeliaSonera’s IP-network. Load balancing using short path routing, bottleneck load balancing and load balancing using MPLS should be analysed. The load balancing algorithms are to be evaluated at different scenarios, such as link or node failure. The analysis should be performed in a realistic model of TeliaSonera IP-network. The model requires that a realistic traffic matrix is generated from actual traffic data. The signalling requirements for implementation of load balancing should also be investigated.

1.3 Method The method used is a commonly used method in simulation projects. At first a literature study is performed, then the objectives are formulated. Thereafter the system is investigated and the model is specified. The collection of data about the system and the creation of the model follow this. Then the simulation experiments are performed and analysed. Finally conclusions are drawn. During the whole project process the work is documented. The method is illustrated in Figure 1.1.

Page 12: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

9

Figure 1.1. The project method

1.4 Report outline In Chapter 2 the fundamentals of routing are explained. The fluid flow model is defined in Chapter 3 and in Chapter 4 the load balancing algorithms are defined. Chapter 5 describes the system that is to be modelled and Chapter 6 specifies the model. The model is described in Chapters 7, 8, 9 and 10. Chapter 11 and 12 covers the analysis. In Chapter 13 the conclusions are presented. All abbreviations used in this report are presented in Appendix A.

Formulate the objectives

Specify the model

Document working process

Create the model

Perform experiments

Analyse results

Draw conclusions

Collect data

Page 13: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

10

2 Routing fundamentals This chapter covers some basic concepts in routing and briefly explains how routing protocols function in general.

2.1 Basic concepts When transporting data from source to destination in a network, a routing protocol can determine which path should be used. A routing protocol is a set of rules that control how routing decisions are made. Every router has a routing table. The routing table tells the router in which direction it shall forward data destined for every possible destination. More specifically, the routing table tells the router to which outgoing interface it will forward data, based on the destination address of the data in question. A routing table can be static or dynamic. A static routing table is only changed when manually reconfigured. A dynamic routing table is automatically updated when changes in the network topology are detected. In large networks of today, dynamic routing tables are used to ensure network functionality. Dynamic routing tables are maintained by routing protocols. There are two different routing strategies; hop-to-hop routing and multi-hop routing. In hop-to-hop routing, every router makes its forwarding decisions independently. As a result, every router along the path from origin to destination controls the forwarding direction. A router along the path knows only which router is the next step in the path and no router has knowledge of the complete path; the data propagates hop by hop. In multi-hop routing, the complete path from origin to destination is determined prior to sending any data. A router along the path forwards the data according to the predefined path and does not make any independent forwarding decisions. Some hop-to-hop routing protocols are introduced in Section 2.2 and a method for multi-hop routing is described in Section 2.5.

2.2 Routing protocols There are many different kinds of routing protocols. Here, some of the most commonly used hop-to-hop routing protocols are introduced.

2.2.1 Distance vector routing The most commonly known distance vector routing protocol is the Routing Information Protocol, RIP. RIP uses a simple method to create and maintain the routing tables. The protocol counts the number of hops to the destination to determine the best path to the destination. The path calculation is based on distance vector routing. This involves that each router maintains information of the distance from

Page 14: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

11

itself to every destination. The path from origin to destination with the smallest number of hops will then be chosen.

2.2.2 Link state routing In link state routing, each router maintains a packet which contains the names of the neighbouring routers and the costs involved to get there. This packet has different names depending on which routing protocol is intended. It is known as a Link State Packet, LSP, or alternately as a Link State Advertisement, LSA. From now on, the term LSP will be used to describe this data. Every router periodically listens for changes in its neighbouring area and updates its LSP whenever something has changed. These changes could, as an example, be link failures, updated link weights or the detection of a new neighbour router. Whenever the LSP of a router is updated, the router in question distributes its LSP to every other router in the network. When a router receives an LSP from another router in the network, it checks if it has any previously received LSP from the same sender, and saves the most recent LSP. The received LSPs are then used to create a complete map of the topology, from which it can compute routes to each destination.[1] Open Shortest Path First, OSPF, is a link state routing protocol. In OSPF, each link in the network is given a cost, also referred to as a weight. The set of these weights is called the metric of the network. The metric is used to determine the shortest/best path from every origin to every destination. The weight of a link is set manually by a network administrator, and is often set to be inversely proportional to the capacity of the link. This is done to make more traffic flow on links with high capacity than links with low capacity. When several shortest paths exist, a random path can be chosen. However, modern routing protocols offer the possibility to use ECMP, which is the abbreviation of Equal Cost Multi Path. ECMP is a flow sharing technique that allows the flow to be divided evenly among outgoing links composing shortest paths of equal length. A routing protocol that is very similar to OSPF is IS-IS, Intermediate System to Intermediate System. IS-IS is a popular protocol used by many Internet Service Providers, ISP’s[1]. IS-IS is like OSPF a link state routing protocol and uses shortest path calculations to make path decisions.

2.3 Autonomous Systems As mentioned in the previous section, routers exchange their knowledge of the network topology with each other in order to make the best routing decisions possible. However, when a network reaches a certain size, co-ordinating the routing within the network becomes too much to handle. To solve this problem, a network may be divided into parts called Autonomous Systems, ASes. An AS is a sub-network under the authority of a single administration, see Figure 2.1[2]. The routing inside of an AS is known as interior routing and the routing outside of an AS, i.e. between ASes, is known as exterior routing. Different rules for the routing

Page 15: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

12

procedure, i.e. different routing protocols, are used in interior and exterior routing. The functionality of exterior routing is not covered in this report. The process of sending data between different ASes is known as peering or transiting. Data is peered when it is originated in one AS and terminated in another, without having passed any other ASes in between. Data is transited when it is originated in one AS, then routed through one or more ASes before terminating in another AS. The Internet is built up by many interconnected ASes administered by different network operators. The data flows between these ASes are governed by agreements between the operators. As an example, some operators may allow peering traffic to and from other ASes, but disallow transiting data through it’s AS.

Figure 2.1. Autonomous systems

2.4 Traffic engineering Traffic Engineering, TE, is a way to enhance the performance of a network. Traffic engineering consists of both performance evaluation and performance optimisation of a network [3].

AS AS

AS

AS

Exterior routing

Interior routing

Page 16: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

13

The major goal with TE is to enhance the performance on both the routing and the resource level of the network. This can be achieved by finding a way to utilise the existing network more economically. Another aspect of TE is to enhance the reliability of the network to make it less vulnerable. This can be achieved by improving the network survivability in case of error or network infrastructure failures. TE performance optimisation can be achieved by capacity management and traffic management. The traffic performance is commonly measured in delay, packet loss and throughput. Capacity management includes capacity planning, routing control and resource management. Resources are bandwidth, buffer space and computational resources of the routers. One traffic management method is queue management. Another method is called load balancing and is a method to control and optimise the routing function to be able to route the traffic through the network in the most efficient way. Load balancing will be further described in Chapter 4 of this report. The purpose of TE is not to reach a onetime goal, but a continuous process of improving the network. The objectives of TE may change over time when new technologies emerge or new requirements set in. At the same time different networks may have different optimisation objectives.

2.5 MultiProtocol Label Switching The Internet Engineering Task Force, IETF, initiated the formation of Multi Protocol Label Switching, MPLS, in 1997[4]. The IETF is the organisation that defines the standards for common Internet operating protocols, such as the Transmission Control Protocol/Internet Protocol, TCP/IP. MPLS is basically an improvement of several earlier techniques, such as Cisco’s tag switching, IBM’s Aggregate Route Based IP Switching, ARIS, and Toshiba’s Cell-Switched Routing, CSR [4]. The goal when creating MPLS was to bring the speed of layer 2 switching into layer 3 routing[4]. The term layer aims at the different levels of abstraction with which a network can be divided into. A popular model for this is the Open System Interconnection, OSI. The model was defined by the International Organisation for Standardisation, ISO. The network addresses in layer 2 are non-hierarchical while the addresses in layer 3, for example IP, are hierarchical. Hierarchical addressing allows for smarter routing.

2.5.1 Fundamentals of MPLS MPLS is a method for multi-hop forwarding of packets through a network. As the name implies, a router using MPLS makes its forwarding decisions based on labels. MPLS can be implemented in a whole network or a part of a network. One of the benefits of MPLS is that the routers can make their forwarding decisions based on the contents of a label, rather than by a complex route lookup based on the destination IP-address. MPLS compatible routers are called Label Switch Routers, LSR’s. An MPLS network is composed by edge LSR’s and internal LSR’s, see Figure 2.2. When a data packet

Page 17: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

14

reaches the ingress edge LSR, a label is attached to the packet. This label contains information of the entire path through the MPLS network, the path is called a Label Switched Path, LSP. Notice that the abbreviation LSP earlier in this report had a different meaning. Any use of the abbreviation LSP in the following parts of this report will aim at the most recently introduced term Label Switched Path.

Figure 2.2. MPLS network structure After having attached the label, the edge LSR forwards the data to the LSR that is defined as the next hop of the LSP. Every following LSR then forwards the data packet according to the path information contained in the label. Every LSR along the path also strips of the existing label and replace it with a new. At the egress LSR the label is stripped from the original data and the packet exits the MPLS network. In addition to containing the LSP, the label contains information of priority, Quality of Service (QoS) information and possibly also information of Virtual Private Network (VPN) membership. The LSRs use a label distribution protocol to communicate and agree on the forwarding meaning of the labels [5]. MPLS can be used to create VPNs. A VPN is a service to provide customers with private IP networks, without using a leased line. VPN’s can be created with MPLS or by combining the IP Security Protocol, IPSec and tunnelling. The main difference between an IPSec tunnelled VPN and an MPLS VPN is the complexity. With IPSec, tunnels need to be created between each pair of source and destination, with VPN information at each router. But with MPLS, VPN information only has to be processed at the ingress- and egress-routers in the network. However, VPNs created with IPSec tunnelling includes a built in encryption, which MPLS VPN’s do not.

2.5.2 Traffic Engineering in MPLS Initially, the most important function in MPLS was to allow for fast forwarding of data in networks using layer 3 addressing schemes such as that of IP. Today, normal IP-forwarding is possible at very high speeds as a result of improved router hardware [6]. Because of this, combined with the fact that traffic engineering has grown more

Edge LSR Ingress

Edge LSR Egress

Edge LSR

LSR

LSR

LSR

LSR

LSR

Edge LSR

MPLS Network

LSP

Page 18: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

15

popular, the primary advantage of MPLS today is its possibilities for traffic engineering. MPLS can be used for traffic engineering because MPLS provides the ability to define explicit paths through the network. One or several paths can be predetermined between each pair of edge LSR’s and flow sharing can be performed between these paths. It is also possible to set performance characteristics for a certain class of traffic [4].

Page 19: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

16

3 The fluid flow model This chapter defines some notations and symbols used to describe a network and its qualities. These notations are used when mathematically describing networks in the following chapters.

3.1 Basic definitions This section presents a general way of describing a network. A network consists of routers interconnected by links. A network is often represented as a directed graph, i.e. a number of nodes that are interconnected via a number of directed arcs. The nodes represent the routers and the arcs represent the links of the network. A node, n, is a member of the set N (n∈N) that represents all the nodes in the network. In the same way an arc, a, is a member of the set A (a∈A) that represents all the arcs in the network. Using these notations, the network can be described as (N,A). The data sent through the network can be represented by flows. This is represented by the notation fa, which describes the amount of data per time unit that flows on arc a at a certain time. The fluid flow model defines:

n a node a an arc/link na the terminal node of link a N the set of all nodes in the network A the set of all arcs in the network (N,A) a graph representing a network fa the flow on arc a

The symbols used to describe networks and network components in this report are given below: a node an arc/link or two arcs/links a network

Page 20: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

17

3.2 Extended definitions The general network notation only describes the basic characteristics of a network. To be able to describe a larger number of network characteristics, the fluid flow model needs to be extended. The capacity of a link is limited by the bandwidth of the link. Arc, a, has capacity ca. The capacity of an arc is measured by the amount of data that the arc can handle per time unit. The capacity is commonly given in the unit bits/s. As mentioned earlier, the data sent through the network can be represented as flows of data. However, the introduction of the capacity concept demands an extension to the flow concept. The notation o

af represents the amount of data per time unit that is offered to an arc a at a certain time. The notation c

af represents the amount of data per time unit that is actually carried by an arc a at a certain time. If the flow offered to an arc is larger than its capacity, the difference between the offered flow and the capacity is lost and the carried flow equals the capacity (see Equations 3.1 and 3.2). The loss at arc a is represented by ηa and is measured in amount of data lost per time unit. The notation o

al represents the load that is offered to arc a and the notation cal

represents the load that is carried by arc a. The load of an arc describes the relation between the flow and capacity of that arc at a certain time (see Equations 3.3 and 3.4). The letter D is used to describe the Origin to Destination, OD, demand matrix. Dn,t represents the demanded flow of data from node n to node t, the OD-pair (n,t), at a certain time and is measured in amount of data per time unit. Note that the demanded flow Dn,t is not necessarily the amount of flow from node n that reaches node t; some of the flow may be lost on the way. The notation wa represents the weight of arc a. The weight for an arc is the cost for sending one unit of data over the arc and is used to calculate path lengths by the routing protocol. The notation pn,t is used to describe a path from node n to node t. A path is an ordered list of arcs. The notation dn,t represents the distance from node n to node t. The distance from node n to node t is the sum of the weights of all arcs that make up the shortest possible path from node n to node t. To be able to describe flow sharing between outgoing links, the notation θ is used. θn,a,t is the flow sharing parameter, and is equal to the share of the flow at node n that is destined for node t and that is forwarded over arc a. The extended fluid flow model defines the following characteristics:

n a node a an arc/link

an the terminal node of arc a N the set of all nodes in the network A the set of all arcs in the network ( )AN , a network

Page 21: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

18

ac the capacity of arc a o

af the flow that is offered to arc a c

af the flow that is carried by arc a

aη the flow that is lost at arc a oal the load that is offered to arc a cal the load that is carried by arc a

tnD , the flow demanded from node n to node t aw the weight of arc a tnp , a path from node n to node t pn the terminal node of path p pw the length of path p tnd , the distance from node n to node t

tan ,,θ the share of the flow at node n that is destined for node t and that is forwarded over arc a (0≤ tan ,,θ ≤1).

The Equations 3.1 and 3.2 describes the relationship between capacity, flow and loss:

= oa

aca f

cf

otherwise if a

oa cf > (Equation 3.1)

=0

ao

aa

cfη

otherwise if a

oa cf > (Equation 3.2)

The Equations 3.3 and 3.4 describes the offered and carried load of a link:

a

oao

a cf

l = (Equation 3.3)

a

cac

a cf

l = (Equation 3.4)

Page 22: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

19

4 Load balancing This chapter describes the load balancing concept and defines the three load balancing methods covered in this report.

4.1 Introduction As mentioned in Section 2.4, load balancing is a form of TE. The purpose of load balancing is to use the present network infrastructure more efficiently. Today, data in an IP-network is most commonly routed on the shortest path, possibly using ECMP for flow sharing. This can result in high usage of some links, while other links are used far below their capacity. A network with too high usage of some links results in decreased performance for the whole network. High usage might cause congestion which might result in loss of data, reduced throughput and high delay. The principle of load balancing is to distribute the data load more evenly over the network in order to increase the network performance and efficiency. With load balancing a deferral of link capacity extensions might be possible. It can also simplify manual management of the network and allows more flexible network topologies. [7] The term load balancing can have different meanings. Load balancing can be referred to as the overall goal of redirecting data flows in a network, and is the definition used in this report. But load balancing can also be referred to when describing the traffic flow being split over several paths at an individual router. In this report the term flow sharing will be used to describe this. Load Balancing can be performed with different methods. One method is to change the weights to get the traffic routed on other paths. Another method is to change the flow sharing itself. It is also possible to combine these two methods.

4.1.1 Static and dynamic load balancing Load balancing can be performed both statically and dynamically. Load balancing is static when the flow sharing parameters are calculated/set without respect to the current traffic data. The static flow sharing parameters can be calculated from collected typical traffic data. After implementation they may be updated manually. A benefit of static load balancing is that a larger manual control of the system is maintained. Load balancing is dynamic when the flow sharing parameters are continuously recalculated and implemented in the network. The data used for the calculation may be data of current link loads, current metrics and current flow sharing. At link failures, traffic disturbances are likely to occur. Dynamic load balancing can minimise these by adapting the routing to the prevailing situation by updating the flow sharing parameters. When implementing dynamic load balancing, it is important that the load balancing algorithm is reliable and functions in any possible topological and traffic state. The

Page 23: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

20

loss in network performance due to malfunctioned load balancing can easily grow much larger than the possible gain [7]. Dynamic load balancing requires automatic routing updates at certain intervals. The updating procedure should be based on traffic measurements. For the load balancing to be meaningful there must be a correlation between the traffic in the different measure intervals. Otherwise the load balancing might cause decreased network performance. There are some aspects to take into account when choosing the update interval for a dynamic load balancing algorithm: • Convergence time. The more often updates are made; the faster the routing can

react to changes and eventually converge to a stable state. • Amount of signalling. Every time a load balancing update is to be made, the

routers in the network must have topology and traffic data at hand in order to make their updating decisions. This data must be signalled across the network. If updates are made at tight intervals, the signalling may produce a great amount of additional data in the network.

• Processing power. The calculations needed to update the routing may be time

consuming if the routers don’t have enough processing power. The updating must be performed at intervals that allow each router to perform these calculations.

• Propagation speed of signalling. The data used for the updating decisions must

reach its destinations before any updating can be performed. • Timing the updates. If some routers perform their updates before others, traffic

disturbances might occur. As an example, if the routers have different knowledge of the network topology, routing loops may occur.

• Relevance of measurement data. If the updating decisions are based on

measured traffic data, this data may be more or less reliable depending on the chosen updating interval. If the updating interval is to small, the measured data may mirror normal fluctuations in the traffic flows, instead of showing the larger trend.

4.2 Load balancing using short path routing Short path routing is a flow sharing technique that allows routing on paths other than the shortest one. The short path algorithm is defined by Per Lindberg in [7]. A parameter α (0<α<1) determines how much longer than the shortest path a certain route is allowed to be for it to be included in the flow sharing. Load balancing using short path routing is achieved by dynamic updates of the link weights. It is also possible to dynamically update the parameter α. Short path routing is a hop-to-hop routing algorithm, which means that every node only controls one step of the forwarding.

Page 24: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

21

Traffic destined for node t is at any node n flow shared on the outgoing link a (see Figure 4.1) in proportion to:

( )( )a

atntn

wwddMax

a⋅−− α,,,0

(Equation 4.1)

Figure 4.1. Short path flow sharing For any link a to get a positive share of the outgoing flow from node n destined for node t, Equation 4.2 must be true:

tnatn dwda ,, <⋅+α (Equation 4.2)

As defined in Section 3.2, the set A represents all links in the network. Let the subset to A, An (An∈A), represent all outgoing links from node n. The share of the traffic at node n destined for node t that is routed on link a is described by the short path routing flow sharing parameter SP

tan ,,θ :

( )( )

( )( )∑∈

⋅−−

⋅−−

=

n

a

a

Aa a

a,tnn,t

a

a,tnn,t

SPtan

wwαdd,Max

wwαdd,Max

θ0

0

,, (Equation 4.3)

The flow sharing parameter is determined with respect of how much longer the path in question (the short path) is compared to the shortest path. Any path longer than the shortest path never gets a larger share of the flow than the shortest path. Equation 4.2 assures that no routing loops are created since no data at node n is ever forwarded to a node na located further from the destination node t than the node n. As described, short path routing is a flow sharing routing algorithm. To use it for load balancing, the link weights are updated at regular intervals. This is done with respect to the link loads; so that a link with high load gets its weight increased and a link with a low load gets its weight decreased.

na n t

pn,t

a tnap ,

Page 25: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

22

4.3 Bottleneck load balancing Bottleneck load balancing is in its nature a dynamic algorithm. Unlike load balancing using short path routing, it updates the flow sharing, not the weights. The algorithm uses information about current flow sharing and link loads to detect bottlenecks within the network. The information is used to calculate new flow sharing parameters. How often a recalculation and implementation is required depends on things such as the traffic fluctuations and desired response time. The bottleneck algorithm is defined by Per Lindberg in [8]. Bottleneck load balancing uses bottleneck parameters to describe the level of congestion on every node and link in the network. The positive parameter Rt

n represents the bottleneck load at node n, where t is the destination node. The positive parameter Ra,t represents the bottleneck load at link a, where t is the destination node. These parameters are used to calculate the bottleneck load balancing flow sharing parameter BN

tan ,,θ .

BNtan ,,θ the share of the flow at node n that is destined for node t and is

forwarded over link a

taR , the bottleneck load of link a, where node t is the destination ntR the bottleneck load of node n, where node t is the destination

The bottleneck load parameters are generated from the current flow sharing parameters and the current link loads. The link loads used could be the offered loads, la

o, or the carried loads, la

c. Calculating the bottleneck load parameters is a recursive process starting at the destination node t. Let the subset to A, An (An∈A), represent all outgoing links from node n. Equations 4.4, 4.5 and 4.6 are then used to calculate the bottleneck parameters:

0=ttR (Equation 4.4)

taR , = Max ( )anta Rl , (Equation 4.5)

ntR = ∑

⋅nAa

tatan R ,,,θ if tn ≠ (Equation 4.6)

Equation 4.4 initiates the bottleneck load parameter for the destination node. Equation 4.5 defines the bottleneck load for link a to be the maximum of the load on link a and the bottleneck load of node na. Equation 4.6 defines the bottleneck load for node n to be a weighted sum of the bottleneck values of the outgoing arcs. The principle of bottleneck load balancing is to distribute the load more equally in the entire network by eliminating bottlenecks. A link with high bottleneck load should therefore get its share reduced at the next iteration. The share of the flow at node n that is forwarded over link a at the next update should be proportional to tan ,,θ / taR , . This however might cause generation of values close to zero, which is not desirable

Page 26: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

23

because it may cause the algorithm to behave unstable. The small positive constants ε and δ are introduced to avoid this. Traffic destined for node t is at any node n flow shared on outgoing link a in proportion to:

+−

+

+

δε

δεθ

ntta

tan

RRMax

,

,,,0 (Equation 4.7)

To make sure that no routing loops may occur, the distance from the node na to the node t must be smaller than the distance from the node n to the node t, i.e. tntn dd

a ,, < .

The definition of the bottleneck load balancing flow sharing parameter, BNtan ,,θ , is:

<

+−

+

+

+−

+

+

=∑∈

otherwise0

if

,0

,0

,,

,

,,

,

,,

,,

tntn

Aantta

tan

ntta

tan

BNtan

dd

RRMax

RRMax

a

εδεθ

δε

δεθ

θ (Equation 4.8)

The statement tntn dd

a ,, < in Equation 4.8 can be further restricted to only allow routing on paths of lengths equal to the shortest path between node n and node t by changing it to: tnatn dwd

a ,, =+ The bottleneck load balancing algorithm is dynamic because it uses current traffic information to balance the load. Implementation of the bottleneck load algorithm requires definition ofε andδ and the iteration interval. It also requires functions for link load signalling through the network.

4.4 Load balancing using MPLS When using MPLS, one or more complete routing paths (LSPs) are defined at each edge LSR before sending any traffic. MPLS brings the ability to perform flow sharing by defining the paths to be used and how the outgoing data load is to be shared on these. If several best label switched paths (paths of lengths equal to the shortest length) exists, the flow sharing can be determined by a few different methods. One method is to distribute the load randomly over available equal cost paths. Another method, least fill, distributes the load randomly over available equal cost paths, but with consideration of available bandwidth. The third method, called most filled, is to distribute the load over one LSP first, then on the next one. [9]

Page 27: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

24

The flow sharing technique used in this thesis work is a variant of the least fill method. The load is shared between LSPs with equal shortest lengths, with consideration to the available capacity of each LSP. To calculate the flow sharing parameters for each LSP, a variant of the bottleneck algorithm is used:

MPLStpn ,,θ the share of the flow at node n that is destined for node t and is

forwarded over path p pl the load (offered or carried) of the highest loaded link in the

LSP p tpR , the bottleneck load of LSP p, where node t is the destination

ntR the bottleneck load of node n (where n is an edge LSR), where

node t is the destination node Let P be the set of all LSPs in the network (p∈P) and the subset to P, Pn,t (Pn,t∈P), represent all outgoing LSPs from node n. Equations 4.9, 4.10 and 4.11 are then used to calculate the bottleneck parameters for the paths and the edge nodes:

0=ttR (Equation 4.9)

ptp lR =, (Equation 4.10) ntR = ∑

⋅tnPp

tptpn R,

,,,θ if tn ≠ (Equation 4.11)

Traffic destined for node t is at any edge node n flow shared on the outgoing path p in proportion to Equation 4.12, where tpn ,,θ is the current share of the flow at node n

destined for node t being forwarded over path p. tpn ,,θ may be equal to MPLStpn ,,θ .

+−

+

+

δε

δεθ

nttp

tpn

RRMax

,

,,,0 (Equation 4.12)

The traffic destined for the destination node t is at any edge node n shared on the outgoing path p according to:

∑∈

+−

+

+

+−

+

+

=

nPpnttp

tpn

nttp

tpn

MPLStpn

RRMax

RRMax

δε

δεθ

δε

δεθ

θ

,

,,

,

,,

,,

,0

,0

(Equation 4.13)

Equation 4.13 does not consider the lengths of the paths, only their bottleneck factors. Because the LSPs in MPLS can be set up in an arbitrary way, which LSPs are chosen becomes important for the effectiveness of the load balancing.

Page 28: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

25

The requirement tndw ,p = could be added to Equation 4.13 to make sure that flow is only routed on paths that have lengths equal to the shortest distance between node n and node t. This however, would be a serious limitation in the functionality of load balancing using MPLS. Another possibility is to weigh the flow sharing according to the length of the LSP in question.

Page 29: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

26

5 System description In this chapter, the system studied in this report is described. All information presented in Section 5.1 is based on information in the TeliaSonera Annual Report of 2003 [10].

5.1 TeliaSonera TeliaSonera is a multinational data- and telecommunications operator with its headquarters in Stockholm, Sweden. TeliaSonera provides services for carrying and packaging of voice and data in the Nordic and Baltic countries, Russia and selected Eurasian markets. TeliaSonera also provides carrier services between destinations in Europe and across the Atlantic. Key facts 2003, global: Net sales: SEK 81 772 million Operating income: SEK 13 140 million Number of employees: 26 694 Number of customers: 49 million (27 million in associated companies)

5.1.1 TeliaSonera in Sweden In Sweden, TeliaSonera provides a full range of services and is the market leader in fixed and mobile services and Internet services. In 2003, broadband services could be offered to 78% of the households and 86% of the business customers. TeliaSonera also sells network services to other operators in Sweden under the Skanova brand. Key facts 2003, Sweden: Net sales: SEK 42 364 million Operating income: SEK 11 150 million Number of employees: 10 712 Number of customers: 4 266 000 (Mobile) 6 173 000 (Fixed voice) 1 277 000 (Internet access)

5.1.2 TeliaSonera International Carrier TeliaSonera International Carrier is a wholesale provider of network services for fixed and mobile operators, carriers and service providers. The carrier operation offers IP and voice services and high capacity bandwidth to destinations in Europe and across the Atlantic on wholly owned infrastructure. TeliaSonera International Carrier operates in 22 countries; Sweden, Norway, Denmark, Finland, Russia, Estonia, Latvia, Lithuania, Poland, Czech Republic, Hungary, Austria, Switzerland, Germany, The Netherlands, Belgium, France, United Kingdom, Ireland, Spain, Italy and the United States. Key facts 2003, International Carrier: Net sales: SEK 4 892 million Operating income: SEK -298 million Number of employees: 555

Page 30: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

27

5.2 System overview The purpose of this thesis work is, as explained in Section 1.2, to evaluate load balancing in a model of the IP-network of TeliaSonera. To define this model, the system to which the model refers must first be examined. The system in question is TeliaSonera’s IP-network covering Sweden, TeliaNet. The system can be divided into tree parts; the network topology part, the routing part and traffic part. The network topology is built of routers, switches and transmission systems. An IP-network can be divided into different layers, as in the OSI-model. With respect to the OSI-model the system is the network layer, which is the layer where IP-routing is performed. This means that the network part of the system consists of OSI model layer 3 routing equipment (such as routers) and the transmission system interconnecting this equipment. As stated in Section 3.1, the routing equipment will hereafter be described as nodes and the cables as links. The traffic part of the system consists of the data-flows in the network and the routing part consists of the rules that governs these data-flows.

5.3 Topology of TeliaNet

5.3.1 TeliaNet in perspective to the Internet The network that is studied in this report is TeliaNet. TeliaNet is the part of TeliaSonera’s international network that covers Sweden. TeliaSonera’s international network also covers parts of Europe and USA. As described in Section 2.3, a network consists of one or more autonomous systems. In this case, TeliaNet is an AS, which is connected to the rest of TeliaSonera’s network via the AS TeliaSonera International Carrier, TSIC. TSIC functions as a transit network and relays data between the different parts of TeliaSonera’s international network. TeliaNet is connected to the rest of the Internet both via TSIC and directly to other network operators in Sweden. Figure 5.1 shows how TeliaNet is related to the rest of the Internet.

Page 31: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

28

Figure 5.1. TeliaNet’s relation to the rest of Internet

5.3.2 Topological principle The topology of TeliaNet has a strictly hierarchical structure. The network is divided into three levels that each performs different parts of the overall task of the network. The three levels are access, distribution and core level. The peering task can also be treated as a level, the peering level (see Figure 5.2).

Figure 5.2. The topological principle of TeliaNet

5.3.3 Access Level It is at the access level that most of TeliaNet’s customers are connected. Nodes in this level are called access nodes. The purpose of an access node is to gather many customers at a single point of access to TeliaNet.

5.3.4 Distribution Level The level over the access level is called the distribution level. A node at the distribution level is called a distribution node or hub node. The term used in this report will be distribution node. A distribution node is connected to a number of

Other Network- operators

TeliaSonera International Carrier

(TSIC)

Customers

TeliaNet

Peering level

Access level

Distribution level

Core level

Page 32: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

29

access nodes via low capacity links. Typically, the capacity of a link between a distribution node and an access node is 100 Mbit/s. A distribution node often also has connections to customers and other network operators. These links usually have capacities of 100 Mbit/s. There are 64 distribution nodes in TeliaNet.

5.3.5 Core Level The nodes at core level are called core nodes. A core node relays traffic between the distribution nodes to which it is connected to and other core nodes and peering-nodes. No customers are connected at the core level, but there are some nodes used for network management that are connected directly to core nodes. The link capacity between a core node and a distribution node is in most cases 2,5 Gbit/s. The corresponding figure for a link between a core and a peering node is 10 Gbit/s. There are 16 core nodes in TeliaNet.

5.3.6 Peering level The nodes at the peering level are called peering nodes or gateway nodes. Peering node will be the term used in this report. A peering node is connected to a core node in TeliaNet, and to some node in another AS. The peering nodes relay traffic between TeliaNet and other networks, such as TSIC. There are 6 peering-nodes in TeliaNet. Four of these nodes are connected to TSIC and the other two are connected to other network operators.

5.3.7 Path diversification principle TeliaNet is designed to provide redundant paths through the network. To accomplish this, the network is divided into two parts and all nodes and links are colour-coded. The two parts each function by its own and together they provide a network where there practically always is an alternate path. The core and distribution levels are built according to a principle that TeliaSonera calls the RGB-principle [11]. This principle implies that every core and distribution node is assigned to be either red or blue and every link is assigned to be red, blue or green. The coloured nodes are grouped in pairs. Each pair consists of a red and a blue node. Corresponding links in the two halves have equal capacity. The principle is that the red nodes are connected with red links and the blue nodes are connected with blue links. In some cases the distribution nodes are also connected to a core node of the opposite colour of the distribution node. This is done via a link of the same colour as the core node in question. Furthermore, the links of the red half are physically diversified to the links of the blue half to provide some protection from physical link failures. A green link is used to connect nodes in the same pair. All distribution nodes have connection between the pairs, but pairs of core nodes are only connected in some cases. The peering nodes are uncoloured. Every peering node is connected to a core node pair; i.e. a peering node is connected to both a red and a blue core node.

Page 33: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

30

The access nodes are all uncoloured and are not grouped in pairs. In some cases, an access node is connected only to one distribution node, but in most cases an access node is connected to both a blue and a red distribution node. Figure 5.3 shows the diversification principle implemented in TeliaNet.

Figure 5.3. The diversification principle of TeliaNet

5.4 Traffic characteristics of TeliaNet

5.4.1 Data flows Most of TeliaNet’s customers are connected at the access level, and some are connected at the distribution level. As a result of this, most of the traffic is originated and terminated at the access level. The data flows travels up in the hierarchy from the access level, through the distribution level to the core level and goes down in the hierarchy to the distribution level and then the access level. However this is not valid for the traffic between access nodes connected to the same distribution node, where the traffic only travels up to the distribution node before going down. The access level local traffic, i.e. the traffic between customers connected to a common access node, is routed by the access node directly to the destination customer. Any traffic destined anywhere else is sent upward in the hierarchy to a distribution node. Thus, because of the hierarchical structure of the network, the access level local traffic does not burden on the rest of the network, see Figure 5.4.

D D

A A A A A A A A A A A A

Core node-pair Core node-pair

Distribution node-pair

Distribution node-pair

P

C

C C

C

D D

Page 34: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

31

Figure 5.4. The access level local traffic At the distribution level, traffic from access nodes connected to the same distribution node is distributed locally. Any traffic destined for any other part of the network is relayed to the core level. The distribution nodes can also have customers connected, where traffic is originated and destined. The core level’s purpose is to forward traffic between different distribution nodes and from and to peering nodes. The management nodes attached at core level also contribute with some traffic flow to the network. However, this contribution is very low as compared to the total network traffic. The peering nodes transfer data between TeliaNet and other ASes. is never used as a transit network. In TeliaNet all traffic entering TeliaNet at the peering nodes is bound for customers in TeliaNet.

5.4.2 Traffic variations The amount of traffic in the network varies over time. The daily variation in traffic for a specific link is presented in Figure 5.5. This variation is typical for the whole network. The amount of traffic in the network is typically at its minimum between 4 and 7 a.m. and reaches its maximum between 8 and 10 p.m.

Figure 5.5. Daily flow variations for a link

On a weekly basis, the traffic varies with the similar daily distributions every day of the week. This is shown in Figure 5.6. However, on some links the traffic amount is slightly different at weekends; a tendency toward this is also seen in the Figure 5.6.

A

Rest of TeliaNet

Case 1: Local origin to

local destination

customers

A

Rest of TeliaNet

customers

A

Rest of TeliaNet

Case 2: Local origin to

non-local destination

customers

Page 35: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

32

Figure 5.6. Weekly flow variations for a link

5.5 Routing in TeliaNet

5.5.1 Weights To handle the routing, TeliaSonera uses the routing protocol IS-IS with ECMP. Routing in IS-IS requires that each link is given a weight. The weights are used to calculate the shortest path from source to destination. TeliaSonera's principle to assign weights is to assign weight 10 on all links, except those between distribution nodes and access nodes, where weight 63 should be used [12]. In TeliaNet there exist some exceptions; in about 5% of the cases the weights are assigned to a smaller value than recommended. This is done purposely to direct the data flows over certain paths. The purpose when setting the weights in this manner is to make the flows of data behave as described in Section 5.4.1. Because of the way the weights are set; no traffic will after having entered the core level, return to a lower level and then again enter the core level.

5.5.2 MPLS usage in TeliaNet MPLS is implemented in TeliaNet to provide VPN services to its customers. VPN’s are not exclusively created in MPLS, IPsec is also used. The method used depends on the customer’s requirements. MPLS is easier to configure; a new MPLS user is easily added to the present infrastructure and MPLS is therefore less expensive. However, IPsec has the benefit of a built-in encryption. [6] MPLS has been implemented in TeliaNet since the beginning of year 2003. In TeliaNet, MPLS is implemented in the entire core and distribution levels. At the access level, MPLS is enabled on some specific assigned routers. TeliaNet uses the Label Distribution Protocol, LDP, defined in [5]. The labels are stored in the Label Information Base, LIB. For compatibility reasons, any MPLS compatible router is also able to handle data packets without any attached label. If no label is attached to a data packet, the packet is routed using the IS-IS protocol.[6] [13]

Page 36: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

33

6 Model specification A model of the system is used in the evaluation process. In this chapter, this model is specified.

6.1 Level of detail Because of the immense complexity of the real system, a simplification of the model compared to the system is necessary. In accordance with the fluid flow model defined in Chapter 3, the topology is modelled in form of a directed graph. This means that the modelled network is composed by nodes and links (arcs) and that the traffic of data packets is modelled as flows of data units per second, measured in bits/s. Another delimitation made is that the full topological span of the system, TeliaNet, is not transferred to the model. Load balancing is evaluated in the central parts of the network, composed by the distribution, core and peering nodes along with the links that interconnect these nodes. The access level is excluded from the model. Because this report only deals with load balancing in TeliaNet and not in TSIC, load balancing of the data flows from TSIC to TeliaNet is not considered. Consequently, load balancing between TeliaNet and TSIC is only performed on data flows flowing toward TSIC, but not data flows flowing toward TeliaNet. The traffic demand pattern, is very complex because it is dependent upon human behaviour. For example, when a user wants to download data, the same data may exist in several locations on the Internet. If this is the case, the user will probably want to download the data from the source that gives him the highest transfer-speed. This means that several alternative routes address the same demand and that the user may change his traffic pattern when network utilisation changes. Because this behaviour is hard to model, the traffic demands implemented in the model are independent of network utilisation. For dynamic load balancing to function, signalling of information between the routers is necessary. The signalling part is left out of the model and is analysed separately in Chapter 12. In the model, time is represented discretely. The time span is divided into a limited number of intervals. In every interval the condition of the network is constant.

6.2 Model structure Four submodels compose the model of the system. One model is used to represent the topology of the network, one describes the traffic demands, one handles the routing and another models the costs involved for the prevailing situation (see Figure 6.1).

Page 37: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

34

The topology model represents the network topology by a directed graph. Specifically, the topology model is made up by tables of data that describes how the nodes and links are interconnected. It also describes link characteristics such as capacity and weights. The topology model is further described in Chapter 7. The traffic model represents the network traffic demand as an OD demand matrix. The OD demand matrix describes the quantity of data flow that is demanded from every origin node to every destination node at a specific time. Chapter 8 describes the traffic model. The cost model describes the resulting cost for a certain network situation, it reflects the network performance. The cost model gives a measurement that can be used to compare different situations and algorithms. The cost function is a mathematical function. Chapter 9 of this report covers the cost model. The routing model models the routing algorithms. The algorithms implemented are the shortest path routing algorithm with ECMP (used by IS-IS) and the three load balancing algorithms to be evaluated. Given a topology and a traffic model, the routing model returns the resulting link flows and losses. The routing model is a software written in the Java programming language. The routing model is described in Chapter 10 of this report.

Figure 6.1. Model structure

6.3 Assumptions When performing load balancing updates in the model, each router is assumed to have the information available. In reality, signalling is needed to achieve this. When sending data from TeliaNet to TSIC, the assumption is made that data may be sent to any of the four TSIC peering nodes that are connected to TeliaNet. In this report, these nodes are considered equally suited for this purpose. In reality however, traffic may be peered over specific links based on which node is the origin and which node is the destination, or based on some other criteria. Furthermore, it is assumed that when data is sent from the TSIC AS to a node in the TeliaNet AS, TeliaNet has no control over which TSIC peering node the data will be routed through. From TeliaNet’s point of view, the data will emerge at any of the four TeliaNet peering nodes connected to TSIC. In reality, the AS TeliaNet can control this by using a technique called Multi Exit Discriminator, MED, in its routers using the Border Gateway Protocol, BGP [6]. Since this is disregarded in the model, it will not be further discussed.

Topology model

Traffic model

Routing model

Cost model

Model

Page 38: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

35

It is assumed that all routing in TeliaNet is currently performed according to the shortest path with ECMP routing algorithm used by the IS-IS routing protocol. The reason for this is that the traffic model would otherwise be very difficult to create. In reality, other rules and protocols affect the current routing in TeliaNet. An example of this is the use of MPLS to offer VPN services to the customers. Another assumption made is that no traffic in the network is lost under normal circumstances. The result of this is that the only time any traffic is lost is when a link is used over its capacity. The traffic lost is then exactly equal to the offered flow exceeding the capacity. In practice, traffic may also be lost as a result of random traffic variations, firewall rules and timed out packets. A packet is timed out when its Time To Live, TTL, timer reaches zero. The TTL of a data packet is initialised to a certain value and at every hop, the TTL timer is subtracted by 1. Furthermore, it is assumed that routing loops never occur. In reality, routing loops may exist if some routers have different knowledge of the topology than others.

6.4 Model input and output To be able to evaluate different load balancing algorithms, the model has to deliver some suitable output. This output is the flow and loss at every link in the network and the total cost for the given situation. The cost represents the traffic disturbance due to congestion in the network. This cost will provide a foundation for the evaluation of the load balancing algorithms.

Figure 6.2. Model input and output For the model to deliver the output, some input need to be given to the model. The input to the model is the simulation run length, the topological scenario, the traffic scenario and the routing options. The simulation run length specifies the number of iterations to be simulated. The topological scenario defines any changes of the network topology. As an example, the topology scenario defines such events as link or node failures or that some links have higher capacity than usual.

Model

Routing options

Flow and loss at

every link

Input

Output Topological scenario

Traffic scenario

Cost of current

situation

Simulation run length

Page 39: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

36

The traffic scenario specifies the amount of demanded traffic in the network. The traffic scenario could as an example be set to reflect the traffic at low traffic or at the busy hour of a day. The model also has to be given information of which routing algorithm to use. This is implemented to provide the possibility to compare different load balancing algorithms to the normal routing strategy. If the routing algorithm uses load balancing, the model also has to be provided information of the load balancing algorithm’s parameters. Such a parameter could, as an example, be the updating interval of the load balancing algorithm.

6.5 Data collection

6.5.1 Data requirements To build a model of TeliaNet requires a large amount of data. It requires information about all nodes and their type, placement and colour. The capacity, weight, colour and information of the flow of each link also have to be known.

6.5.2 Data source The topology of TeliaNet is graphically represented in an internal web-based interface. Through this interface, information about the nodes, the node types, links, link capacity etc can be found. In the graphical interface, there is also information available about the traffic flow on each link. The daily, weekly, monthly and yearly minimum, average and maximum flows are presented for each link. Information has been collected from the web-based interface as well as from a database covering parts of the information needed. Unfortunately, complete access to the underlying database for the graphical interface was not possible. Consequently a project database had to be constructed. Information for the project database has been collected from the original database and from the web-based interface. The information about the weight of each link was found in the database. A large amount of data needed to be collected from the web based interface. Some information in the web-based interface has been extracted by hand, such as node and link information, link capacity and colour of both links and nodes. The data collection was time consuming and in order to obtain all the data needed, a script was programmed to extract essential information from the web-based interface. The script was used to collect information of the traffic flows at each link. The flow at a link is in the web-based interface given both as outgoing traffic at the sending node and incoming traffic at the receiving node. The information of the outgoing flows was chosen to build the model. The flow information collected for each link is the average flow of a month during the autumn of 2004.

Page 40: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

37

6.5.3 Data reliability Because of the immense amount of data needed and the way this data had to be collected, some errors may unfortunately be included in the final model. As an example, it was discovered that the stated outgoing flows were not always equal to the stated incoming flows of a node. Furthermore the link flow data sometimes differed depending on where the data was collected. In addition to this, the spelling of the nodes was not always consistent. This resulted in problems for the script. However, a lot of work has been done to make the model free from errors. Thorough validation of the model has been performed in collaboration with TeliaSonera.

Page 41: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

38

7 Topology model This chapter introduces some topological concepts used in the report and describes how the topology model is built.

7.1 Topological concepts To represent traffic entering and exiting the network in the model, every node has a sink- and a source magnitude. The source magnitude of a node is equal to the amount of data that enters the network through that node. The sink magnitude is equal to the amount of data that exits the network through that node. The source and sink magnitudes of a node are time dependent and represent the instantaneous data flow in data units per second. Every node in the model is either an edge node or an internal node. Traffic flow enters and exits the network at the edge nodes. No traffic enters or exits the network at internal nodes. Consequently the source and sink magnitudes is zero at all internal nodes. In the model there are 22 internal nodes and 110 edge nodes; the total number of nodes in the model is 132. For every link the incoming and outgoing flow in both ends is available. The link flow measured is the outgoing flow on each link. The data was sometimes inconsistent and the outgoing flow in one end of the link was not always the same as the incoming flow in the other end. There was also a difference between the incoming and outgoing flow of a node. To adjust for this, virtual nodes have been created. If a node receives more data than it sends, a virtual sink node is attached to the node. In the opposite case, if the node sends more data than it receives, a virtual source node is attached. The additional data is defined to terminate at or to be originated at the virtual node. Furthermore, virtual nodes can be used to replace a group of nodes in order to simplify the topology model. Of the total of 132 nodes, 46 are virtual nodes and 86 are non-virtual nodes. There is a total of 368 links in the model.

7.2 Distribution-level As described in the Section 6.1, the access level is not included in the model. This means that all distribution nodes in the system will be represented as edge nodes in the model. The source magnitude of a distribution node is equal to the sum of the link flows on the links from the distribution node to the connected core nodes and any other connected distribution node. In the same way, the sink magnitude of a distribution node is calculated based on the link flows on the links from core and distribution nodes. With this, any local access level traffic is not included in the model.

Page 42: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

39

7.3 Core-level All core nodes are internal nodes and have the sink and source magnitudes zero. All management nodes connected directly to a core node are replaced by two virtual nodes. One of the virtual nodes represents the sink of the nodes and the other represents the total source. By doing this replacement, the number of non-core nodes on the core level is decreased, see Figure 7.1.

Figure 7.1. Virtual node replacement

7.4 Peering-level In Section 6.3, the load balancing possibilities of the data flows between TeliaNet and TSIC were investigated. The conclusion was that only data from TeliaNet to TSIC would be load balanced in this thesis project. The TSIC peering nodes are the only TSIC nodes that are included in the model, they are so called edge nodes. The amount of data that flows on the links between the TeliaNet peering nodes and the TSIC peering nodes equals the total demanded flow of data between TeliaNet and the AS TSIC. In order to take care of this, an adjustment of the model is needed. The adjustment implies that the links from the TeliaNet peering nodes to the TSIC peering nodes get redirected to a virtual node, called Peering TSIC Sink. This virtual node inherits the prospective of the four TSIC peering nodes. The result of this is that the new virtual node has an incoming flow from TeliaNet that equals the sum of the flow from the four TeliaNet peering nodes to the TSIC peering nodes. The node Peering TSIC Sink is in fact a sink of a magnitude equal to the summed sink magnitudes of all four TSIC peering nodes.

Figure 7.2. Virtual peering node replacement

C C

TSIC

TeliaNet

TSIC

TeliaNet

Page 43: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

40

The adjustment also implies that the nodes Peering TSIC 1, Peering TSIC 2, Peering TSIC 3 and Peering TSIC 4 are made obsolete and replaced by the virtual nodes Peering TSIC 1 Source, Peering TSIC 2 Source, Peering TSIC 3 Source and Peering TSIC 4 Source. These new virtual nodes inherit the source magnitudes of their predecessors, see Figure 7.2.

7.5 Verification The topology model has been verified by comparing the link and node list with the figures in the web-based interface. All nodes and links have also been plotted by hand to ensure that the topology model follows the defined topology principle.

Page 44: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

41

8 Traffic Model The traffic model is the part of the model that describes the traffic demands. Since a detailed traffic model for TeliaNet did not exist at the time this project started, one had to be estimated. This chapter describes the methods used for this estimation and the evaluation of these methods.

8.1 Problem definition The traffic model is constituted of two parts. The first part is the OD demand matrix described in Section 3.2. This part describes the typical network traffic demand and is time independent. Generating an OD demand matrix based on data of measured link flows and knowledge of the network topology is an incompletely defined problem. Since the demand between any two nodes in the network needs to be found and the network consists of 132 nodes, the OD demand matrix consists of 17424 (1322) unknown variables. The known variables are the link flows of all 368 links in the network; this makes the number of known variables significantly smaller than the unknown. Because of this the OD demand matrix had to be estimated. For a certain set of link flows, several OD demand matrices may be possible and because of this, the work must be oriented to find the most probable one. Two approaches have been tested to find a probable OD demand matrix; a gravity model approach (Section 8.2) and an optimisation model approach (Section 8.3). The second part of the traffic model describes how the demands in the OD demand matrix vary over time. This is treated in Section 8.5.

8.1.1 Source and sink magnitude As described in Section 7.1, the source and sink magnitudes of each node are used to represent traffic entering and exiting the network in the model respectively. The notation e

nm represents the source magnitude of node n and is equal to the total amount of flow that enters the network through node n. The sink magnitude of a node is equal to the total amount of flow that exits the network through that node. In this report, the sink magnitude of node n is represented as x

nm . The sink or source magnitude of a node can never be a negative number. e

nm the source magnitude of node n x

nm the sink magnitude of node n Since all data that enters the network also must exit the network, the following balancing Equations must be satisfied:

∑ =n

xttn mD , , t∀ (Equation 8.1)

Page 45: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

42

∑ =t

entn mD , , n∀ (Equation 8.2)

∑∑ =t

xt

n

en mm (Equation 8.3)

The source and sink magnitudes are determined by looking at the incoming and outgoing flows for every node where data is originating or terminating; that is in this case the edge nodes. The source magnitude of an edge node is equal to the sum of the link flows of all outgoing links. The sink magnitude of an edge node is equal to the sum of the link flows of all links going to that node. The average source and sink magnitudes were calculated from the average link flows of a month. This means that the source and sink magnitudes calculated represent the monthly average demands.

8.2 Gravity model approach The gravity model is a simple method for estimating OD matrices. It has for example been used by operators to estimate OD matrices for telephony and IP networks [14]. The gravity model uses the sink and source magnitudes of the nodes, and their relation to the total network traffic, to estimate a traffic matrix. The gravity model estimates the demand between node n and node t as [14]:

xt

n

en

en

tn mm

mD ⋅=

∑, (Equation 8.4)

The gravity model implies that the amount of data that node n sends to node t is proportional to the amount of data that is originated at node n, compared to the total network traffic. This model however, does not take into consideration that TeliaNet is never used as a transit network. Because no traffic is transferred via TeliaNet, the demand between any peering nodes must be equal to zero. Furthermore the traffic from any node to itself is also always zero. To handle this problem, an altered version of the gravity model is needed.

8.2.1 Altered gravity model To cope with the fact that the demand between some nodes must be zero, Equation 8.4 is altered. The subsets to N; Bt ( Nt∈ ), are introduced to represent allowed OD pairs. The set tB includes all nodes that are allowed to send data to node t. In addition to Bt, the vector of balancing variables, S are introduced. S are the variables that balances the demand for every OD pair so that the demand for some OD pairs is allowed to be zero. The evolved gravity model is defined as:

Page 46: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

43

∈+⋅

=∑∈

otherwise0

if,

,

ttnxt

Bn

en

en

tn

BnSmm

m

D t (Equation 8.5)

To determine the S variables, Equation 8.2 is combined with Equation 8.5 in the following way:

∑ ∑∑∑ ∑∑ +

⋅=

+⋅==

∈∈t t

tnxt

Bn

en

en

ttn

xt

Bn

en

en

t

entn Sm

mm

Smm

mmD

tt

,,,

The Equation above can the be written as:

∑ ∑∑

⋅−=

∈t

xt

Bn

en

ene

nt

tn mm

mmS

t

, (Equation 8.6)

The S variables are then defined as in Equation 8.7 below.

∈>⋅−

∈<⋅

= ∑∑∑

∑∑∑

∈∈

∀∈

otherwise0

and 0 if

and 0 if

,,

,,

,t

ttnJn

tn

Hn

en

en

tttn

ttn

Ft

xt

xt

tn BnSSm

m

BnSSm

m

St

n

(Equation 8.7)

Where Fn is the set of nodes that node n send data to and that any node with positive S values is allowed to send to. H is the set of nodes that have a positive S sum and Jt is the set of nodes that send data to node t and has negative S sums. The Equations 8.5, 8.6 and 8.7 provide an estimation of the traffic matrix and comply with the balancing equations 8.1, 8.2 and 8.3.

8.3 Optimisation model approach The problem of finding a suitable traffic matrix given information of link flows can be defined as an optimisation problem. The problem is to find an OD demand matrix that minimises the difference between the measured and estimated link flows. The method

Page 47: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

44

can also take a preferable traffic matrix in consideration to generate a more suitable traffic matrix from the collected data. This optimisation model is defined and implemented in Matlab by Clas Rydergren [15]. This method requires the possible OD pairs to be predefined. The OD pairs have been defined by the principle that every node with a source magnitude larger then zero may send data to a node with a sink magnitude larger then zero, with the following exceptions:

• A node may never send data to itself. • A peering node may never send data to another peering node, because

TeliaNet is not used as a transit network.

8.3.1 Starting approach Let i represent an OD pair (i.e. a set of two nodes) and the set I represent all allowed OD pairs (i∈I). The OD demand matrix D, is in this approach represented as the vector g. Let g be the estimated demand vector and g the preferable demand vector. The value of gi ( igi ∀≥ for 0 ) equals the estimated demand for the OD pair i. The matrix P represents the current routing configuration in TeliaNet. The value of

aiP , ( aiP ai ,for 10 , ∀≤≤ ) represents the ratio between the total demand of OD pair i and the fraction of that demand that is routed over link a. As an example; aiP , equals 1 if all demanded flow for OD pair i is routed over link a. The matrix P is calculated using information of the network topology and the current routing configuration of TeliaNet. The vector f represents the estimated link flows and f represents the measured link flows. The vector f is dependent of the estimated demand vector g and the route data vector P. Using these notations, the problem of estimating an OD demand matrix is defined by the minimising function Z subject to Equations 8.9, 8.10 and 8.11:

( ) ( ) ( )ffEggEfgZ ˆ,ˆ,,Min 21 ⋅+⋅= µµ (Equation 8.8) s.t. ( ) afgP

iaiai ∀=⋅∑ , (Equation 8.9)

igi ∀≥ 0 (Equation 8.10) afa ∀≥ 0 (Equation 8.11)

The function ( )yxE , describe the distance between the arguments x and y . The function E is measured with the entropy measurement stated in Equation 8.12. If x and y differ significantly, ( )yxE , is larger than if x and y are more similar. The

Page 48: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

45

parameters 1µ and 2µ determine which influence the measured link loads and the preferred traffic matrix should have for the final traffic matrix.

( ) xyxxyxE −

⋅= ln, . (Equation 8.12)

Equation 8.8 can now be described as:

( ) ∑∑

⋅⋅+

⋅⋅=

aa

a

aa

ii

i

ii f

ff

fggg

gfgZ ˆlnˆ

ln,Min 21 µµ

(Equation 8.13)

The problem is simplified by setting 1µ to 1. This can be done because 1µ and 2µ are weighting parameters and only the relationship between them is of importance. However, the problem is still incompletely defined and therefore needs to be relaxed, this is done in the next section.

8.3.2 Lagrange relaxation approach The constraints of Equation 8.9 are Lagrange relaxed and the Lagrange relaxed problem is defined as:

( ) ( ) ( )∑ ∑

−⋅⋅+=

aa

iiaia fgPfgZfgL ,,,,Min λλ (Equation 8.14)

s.t. igi ∀≥ 0 afa ∀≥ 0 aa ∀≥ 0λ (Equation 8.15)

A minimum of the objective function can be found by finding a stationary point to the Lagrange function L [16]. A stationary point is found by deriving L with respect to ig and af and setting the derivatives to zero.

Setting 0=∂∂

igL and 0=

∂∂

afL gives:

( ) 0ˆ

ln =⋅+

=

∂∂ ∑

aiaa

i

i

i

Pgg

gL λ (Equation 8.16)

0ˆln2 =−

⋅=

∂∂

aa

a

a ff

fL λµ (Equation 8.17)

Page 49: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

46

Equation 8.16 gives:

( ) ( )( )

( )( )∏

∏∑−⋅=

⋅−⋅=

⋅−⋅=

a

Pai

aaiai

aaiaii

aig

PgPgg

,expˆ

expˆexpˆ ,,

λ

λλ

Setting ( )aaΧ λ−= exp gives:

( )∏⋅=a

Paii

aiXgg ,ˆ (Equation 8.18)

Equation 8.17 can then be written as:

21ˆ µ

aaa ff Χ⋅= (Equation 8.19) Equation 8.9 can now be written like:

af

gPa

a

i a

Paiai

ai ∀=Χ

Χ⋅∑ ∏ 0

ˆˆ

21

,,

µ (Equation 8.20)

This implies that the optimality conditions can be expressed as non-linear equations and that these may be solved using an iterative balancing method:

i. Initiate all aΧ to for example 1 for a∀ ii. Iterate through a∀ . At each iteration; let aΧ be variable and let the

otherΧ be fixated at their current value. Use Equation 8.20 to determine value of aΧ .

iii. Break if all equations are nearly fulfilled, if not repeat step ii. The optimisation model approach is implemented in MatLab code and the results are evaluated in the next section.

8.4 Evaluation of the estimated OD demand matrices To evaluate the OD demand matrices estimated is Sections 8.2 and 8.3, the resulting link flows for these matrices must be calculated. The estimated matrices may then be evaluated by their ability to generate link flows close to the measured link flows. Calculating the link flows given an estimated OD demand matrix is done using the current network topology and routing data. The P matrix introduced in Section 8.3.1 withhold this information and Equation 8.9 is used to calculate the generated link flows.

Page 50: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

47

To compare the estimated traffic matrices numerically, the Mean Absolute Error, MAE (Equation 8.21), and Mean Relative Error, MRE (Equation 8.22), measurements are used. The MAE states the mean distance between estimated and measured link flows over all links. The MRE is equal to the mean relative distance between estimated and measured link flows. The notation A represents the number of links in the network.

MAE = A

ffa

aa∑ − ˆ

(Equation 8.21)

MRE = A

fff

a a

aa∑ −ˆ

ˆ

(Equation 8.22)

The MRE measurement can not be used when the measured link flow is 0. Hence of total 368 links, 31 links with measured value 0 have been eliminated from the set A for this measure. However of all estimations, there were only two cases where the estimated link flows did not match the measured flows in the cases the value of this was 0. The total network demand is also evaluated. To make a good estimation of a real OD demand matrix, the sum of the estimated demand must be close to the sum of the measured demand. To illustrate the absolute and relative error for every link, a graph can be made. The graph shows the estimated link flow as a function of the measured link flow for every link. A perfect estimation would in such a graph be represented as the linear curve where aff aa ∀= for ˆ .

8.4.1 Evaluation of the gravity model The evaluation of the gravity model gives the result presented in Table 8.1 and Figure 8.1

Estimation model MAE (Mbit/s) MRE Total demand (%) Gravity model 98.42 8300.67 100

Table 8.1. Result of evaluation of traffic matrix generated by gravity model

Page 51: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

48

Gravity-model

0

500

1000

1500

2000

2500

3000

3500

4000

4500

0 1000 2000 3000 4000

Measured link load

Estim

ated

link

load

Figure 8.1. Illustration of the gravity model results.

8.4.2 Evaluation of the optimisation model The results of the estimation of the optimisation model depend on the parameter 2µ . If 2µ is set to a large value more consideration will be taken to the measured link loads than the preferable traffic matrix and vice versa. In this case a preferable traffic matrix does not exist. When evaluating the traffic matrix, different values of 2µ have been tested. The result is shown in Table 8.2.

Estimation model MAE (Mbit/s) MRE Total demand (%) Optimisation model (µ2= 5) 91.00 662.65 74.08727 Optimisation model (µ2= 10) 66.00 650.18 81.85331 Optimisation model (µ2= 13) 60.31 648.13 82.68135 Optimisation model (µ2= 20) 52.06 643.99 83.39146 Optimisation model (µ2= 35) 45.30 651.82 84.00622 Optimisation model (µ2= 45) 43.58 630.45 86.77138 Optimisation model (µ2= 50) 42.67 1418.44 89.39352 Optimisation model (µ2= 75) 44.51 1108.91 90.38968 Optimisation model (µ2= 100) 43.66 698.65 92.64547 Optimisation model (µ2= 125) 44.35 884.82 94.56001 Optimisation model (µ2= 150) 52.06 2021.55 95.59381

Table 8.2. Result of evaluation of traffic matrix generated by optimisation model The result of each estimation has also been plotted with respect to 2µ , see Figure 8.2, 8.3 and 8.4.

Page 52: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

49

0

20

40

60

80

100

0 50 100 150

MA

E (M

bit/s

)

Figure 8.2. Mean absolute error for the optimisation model

0

500

1000

1500

2000

2500

0 50 100 150

MR

E

Figure 8.3. Mean relative error for the optimisation model

0%

50%

100%

150%

0 50 100 150

Tota

l dem

and

Figure 8.4. Total demand for the optimisation model As seen in Figure 8.2, the MAE is smallest when 2µ = 50, but a 2µ value between 35 and 125 is considered acceptable. The MRE is lowest at 2µ = 45, but values of 2µ < 45 and 2µ =100 are considered acceptable, see Figure 8.3. Figure 8.4 shows that the total demand is increasing toward 100% as 2µ is increasing.

µ2

µ2

µ2

Page 53: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

50

8.4.3 Conclusion After evaluating the gravity model, the result shows that the model gives a poor estimation of the traffic matrix. The optimisation model, independent of the value of

2µ , gives a more satisfactory result. But choosing which 2µ value to use is not trivial; different evaluation measurements point out different 2µ values as the best result. After consideration 2µ = 100 is chosen. It gives a traffic demand of 92.6% and at the same time the error values are small. The mean absolute error is 43.66 Mbit/s and the mean relative error is 698.7. The link flows for the chosen traffic matrix is plotted in Figure 8.5.

0

1000

2000

3000

4000

0 1000 2000 3000 4000

Measured flow (Mbit/s)

Estim

ated

flow

(Mbi

t/s)

Figure 8.5. Illustration of the optimisation model results, 2µ =100.

8.5 Estimating the OD demand matrix variations The estimated OD demand matrix is based on average monthly values and describes the average demand for every OD pair. However, in a real system, the traffic demand varies over time. As described in Section 5.4.2 the demanded traffic varies periodically. However, since the fluctuating traffic demands in the end depend on user behaviour, the demanded traffic also varies stochastically for every OD pair. The approach chosen involves that these two kinds of variations are treated separately. The periodic variations are treated in Section 8.5.1 and the stochastic variations are treated in Section 8.5.2.

Page 54: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

51

8.5.1 Periodic demand variations In order to model the demand during high and low traffic, the periodic variations of one day are required. The variations in demand are reflected in the variations in network traffic. Because of this, the demand variations can be deduced from the traffic variations. The variations in traffic on a link depend of the variations in demand of the OD pairs that use that link. To create a demand variation that is representative for the whole network, variation data from ten links was collected. The data was collected at distribution nodes on links interconnected with a core node. All data was collected on the same day and for 24 hours. For every link, the flow at every time was compared to the average flow of that link during the studied day; i.e. the traffic variations were normalised compared to the average flow. In Figure 8.6 all collected link flow variations are plotted along with the average variation plotted as a bold-type line.

0%

20%

40%

60%

80%

100%

120%

140%

0 2 4 6 8 10 12 14 16 18 20 22 24Time of day

Cur

rent

flow

rela

tive

to a

vera

ge fl

ow

Figure 8.6. Daily traffic variations

8.5.2 OD pair individual demand variations To make the traffic model behave more realistic an additional distribution is desirable. The additional distribution would account for the small fluctuations in flow on every link. It would also make the traffic on a link behave independently of other links. Two methods have been considered to model these fluctuations. The first method is to create a series of OD demand matrices using the method described in Section 8.3. If this was to be done based on measured instantaneous link flows instead of average link flows, the small bursts in demand may be modelled. This implies that link flows of all links in small intervals of time needed to be collected, which would be a very time-consuming process.

Page 55: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

52

Another problem with this method is that the correlation of link flows between two consecutive time intervals may not be discovered if the chosen interval is too large. This problem may however be reduced by using the OD demand matrix generated at the previous interval as a preferable traffic matrix in the estimation. The second method considered was to collect a few samples of link flows at small intervals and then either calculate a stochastic distribution or split the flows even over those OD-pairs that send data over the specific link. This is not suitable because the measured link flows are sums of the flows for all OD-pairs over the specific links. The flow might fluctuate even more than measured because the sum might even up. The method can also generate unrealistic fluctuations on the core level. After considering these two methods the conclusion was that the first method would be more suitable to use, but that it would not be implemented in the model due to time limitations.

8.5.3 Conclusion Because of time limitation, the stochastic demand variation model is not implemented in the traffic model. The only variation model used is the periodic variation function described in Section 8.5.1. The periodic demand variation model can be used to model traffic demand during different times of the day. The result is that simulations may be performed with constant traffic demands.

Page 56: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

53

9 Cost model This chapter defines the cost model used in the evaluation of the load balancing algorithms.

9.1 Introduction To be able to evaluate the simulation results, a measurement of how link load is experienced is needed. This measurement is expressed as a congestion cost function. The cost of a link depends on the offered flow and the link capacity. The principle is that if the load of a link is low, the cost should be low, and if the load is high the cost should also be high. A common way to describe the link congestion cost is to use a piece-wise linear increasing convex function. An example of this is Equation 9.1, which is used in [17] and [18]. Equation 9.1 is plotted in Figure 9.1 for a link with a capacity of 1 data unit per time unit.

( )

∞<≤

<≤

<≤

<≤

<≤

<≤

=

a

oao

a

a

oao

a

a

oao

a

a

oao

a

a

oao

a

a

oao

a

oaa

cf

f

cf

f

cf

f

cf

f

cf

f

cf

f

fC

1011if5000

10111if500

1109if70

109

32if10

32

31if3

310if

(Equation 9.1)

0

2

4

6

8

10

12

14

16

18

20

0 0,2 0,4 0,6 0,8 1 1,2 1,4

Offered flow

Cos

t

Figure 9.1. A cost model

Page 57: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

54

The cost function described by Equation 9.1 aims at minimising the total cost by minimising the cost for every link. However, in some cases it might be desirable to have a high congestion on one link, in order to obtain a lower total congestion. Furthermore, the use of different traffic service classes may allow for a greater delay (caused by congestion) for certain low prioritised traffic, if it may cause that higher prioritised traffic is offered an adequate service [6]. In the next section, a cost model that is better adjusted for the traffic quality goals of TeliaSonera is presented.

9.2 Definition The following congestion cost model is defined by Per Lindberg at TeliaSonera [19] and provides a better portrayal of the availability demands of TeliaNet than that of Equation 9.1. It is based on the idea that for loads up to a certain level, 0p ; the delay increases linearly and proportional to the flow. The second interval is for offered loads between the levels p0 and p1, where the load of a link is near 100% or higher. The cost function in this interval is increasing with the square of the flow. The third interval is when the offered load is larger than p1. Here the overload on the link is so severe that the service is considered useless for the customers and the cost function is defined as linear with the slope of v1. The value of v1 therefore represents the cost for loosing one unit of data. Definition of the congestion cost function, ( )o

aa fC :

( )

∞<≤⋅

<≤

−⋅⋅+⋅

<≤⋅

=

a

oao

a

a

oa

a

oa

ao

a

a

oao

a

oaa

cf

pfv

pcf

ppcf

cbfv

pcf

fv

fC

11

10

2

00

00

if

if

0if

(Equation 9.2)

where: ( ) aaa cpvppcbcvp ⋅⋅=−⋅⋅+⋅⋅ 112

0101

⇒ ( )

( )201

011

ppvvp

b−

−⋅= (Equation 9.3)

0v congestion cost per data unit offered to a link with low load 1v congestion cost per data unit offered to a totally congested link 0p lower load threshold 1p upper load threshold; links having a higher load is totally congested

Page 58: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

55

9.2.1 Chosen parameters According to [19], traffic on links in TeliaNet having offered loads up to 80% is only considered to be slightly delayed; therefore p0 is set to 0.8. The cost associated with sending one data unit over such a link, v0, is set to 0.05. Links having offered loads of 200% or more are considered completely congested and all data offered to such a link is lost. Therefore the parameter p1 is set to 2. The cost for sending one data unit over a completely congested link is set to 1. These values are then used to calculate the value of the parameter b in Equation 9.3:

319.1

12

05.08.0

1

1

0

0

≈⇒

====

b

vpvp

The cost function is plotted in Figure 9.2 for a link with capacity 1:

0

0,5

1

1,5

2

2,5

3

0 0,5 1 1,5 2 2,5 3

Offered flow

Cos

t

Figure 9.2. The cost model

Page 59: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

56

10 Routing model This chapter describes the routing model. The routing model returns flow and loss data, based on a chosen network, routing and traffic scenario.

10.1 General routing model As mentioned in Section 6.2, the routing model is written in Java. Given information of network topology and traffic demands; the routing model calculates the link flows and link losses for a chosen routing algorithm. The routing model is built so that all routing algorithms share a common set of general functions. The routing model uses a discrete time space. The routing simulation runs from the chosen start time to the chosen end time. At every point in time, i.e. iteration, the routing model uses the prevailing network topology and traffic demands to make its calculations and produce its output. The model then iterates and performs the same tasks at every simulated point in time. The routing model needs the topology, traffic and cost models to function. The topology model, which is time invariant, is made time variant by adjusting it according to a scenario. Together, the topology data and the scenario data dictate the network topology for any point in time, see Figure 10.1.

Figure 10.1. The composite of time variant topology data

The routing model functions as described in Figure 10.2. At every iteration, route data is calculated. How the route data looks depends on which routing algorithm is used. The route data states how data will be routed in the network. The route data is then used to calculate the offered link flows. The term event is used to describe topology changes.

Time invariant topology

data

Scenario data

Time variant

topology data

+ =

Page 60: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

57

Figure 10.2. Functionality of the routing model

Start run

Has any events

occurred?

Calculate flow and loss

Calculate new route data based

on non load balancing algorithm

End run

Is the simulation finished?

Calculate new route data based

on load balancing algorithm

yes

no

no

yes

Get initial topology and traffic conditions

Get current topology and

traffic conditions

Save output for current iteration

Iterate

Page 61: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

58

10.1.1 Route data calculation The route data calculation provides the information necessary to route the traffic through the network. In IP routing, the route data informs each node how it should forward incoming data flows on its outgoing links, depending on which node is the destination node. In MPLS, the route data simply specifies the LSPs and how each node is to use these in its data forwarding. Two kinds of route data calculations are needed for each load balancing algorithm; one is the actual load balancing algorithm and the other is a supporting routing algorithm that is non-load balancing. The load balancing route data calculation bases its calculation upon information of the topology and measured link flows. The non-load balancing route data calculation bases its calculation solely on information of the topology and current routing. The non load balancing, or event triggered, route data calculation is only performed in the initialisation of the routing and when the information of the network topology has changed; i.e. when it is triggered by an event.

10.1.2 Flow and loss calculation The flow and loss at each link in the network at a certain time are calculated based on the prevailing traffic matrix and route data. The calculation is also based on a simplification that involves that data loss only occurs when the offered flow of a link is larger than its capacity; see assumption in Section 6.3 and Equations 3.1 and 3.2. Furthermore, the OD-pair specific flow and loss at each link needs to be defined: iaq , the part of the demanded flow for OD pair i that is offered to link a iar , the loss at link a for OD pair i

−⋅

≤=

otherwise1

if0

,

,

oa

aia

ao

a

ia

fc

q

cfr (Equation 10.1)

The flow and loss calculation is based on the assumption that the loss at a link is spread equally among the affected OD pairs. The calculation is based on the following algorithm:

i. Route data without any capacity limitations. ii. Identify links that have carried loads larger than 100%.

iii. Identify the OD-pairs that send data over these links. iv. Calculate flow and loss for the overloaded links where the data flow on the links

haven’t earlier passed any other overloaded link. v. Route data with the calculated losses.

vi. If any links are still overloaded, go to step ii. An example of this calculation is presented in Appendix B.

Page 62: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

59

10.2 Shortest path routing with ECMP Shortest path routing with ECMP is the routing algorithm that is currently used in TeliaNet. This algorithm is non-load balancing and is implemented in the routing model to allow for comparison with the load balancing algorithms. This routing algorithm updates the route data only when the network topology changes, i.e. when a new link or node is discovered or when a link or a node fails. When any of these events occur, every node updates its routing table based on the new topology information. In shortest path routing with ECMP, every node splits its incoming data equally over the outgoing links that offer the shortest paths to the destination.

10.3 Load balancing using short path routing Load balancing using short path routing uses the short path routing algorithm to accomplish load sharing and manipulation of the link weights (metrics) to accomplish load balancing in the network. The link weights are changed based on measurements of the offered link load on each link. When the network topology has changed, a quick update must be made to ensure that the routing agrees with the current network topology. This update can not afford to rely on sustainable link load measurements to be available. Partly, this is because it will take some time for each node to receive link load measurement data, and another reason is that the measured data might not reflect the current situation if measured to quickly after the event. Because of this, when an event occurs, a non-load balancing update is performed. In short path load balancing, this means that no weight update is performed.

10.3.1 Load balancing route data calculation A load balancing update in short path routing changes the link weights in order to balance the network load. Each node updates the link weights on its outgoing links based on measurements of the capacities and the offered flows for these links. The offered flow data are mean values over a predetermined period of time. In the model, this period equals one iteration. The updating of the link weights is based on the cost function (Equation 9.2) described in Chapter 9 of this report. Since the cost function describes the total link cost as a function of the offered flow, the derivative of the cost function describes the cost per data unit as a function of the offered flow. The derived cost function is:

Page 63: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

60

( )

∞<≤

<≤

−⋅+

<≤

=

a

oa

a

oa

a

oa

a

oa

oaa

cf

pv

pcf

ppcf

bv

pcf

v

fC

11

1000

00

if

if2

0if

' (Equation 10.2)

To be able to compare this function with the link weights, a function that describes the link weights is introduced below:

( ) oaa

oaa fwf ⋅=σ (Equation 10.3)

( ) a

oaa wf ='σ (Equation 10.4)

Because the derived cost function and the derived weight function (the link weight) describes the cost per data unit, the two functions can be compared. Figure 10.3 shows the cost function and the weight function for a link with a capacity of 10 data units and a link weight set to 0.7, the parameters p0, p1, v0 and v1 have the values presented in Chapter 9.

0

5

10

15

20

25

30

0 5 10 15 20 25 30

Offered flow

Link

cos

t

Figure 10.3. Cost and weight functions

The cost function represents the total customer experienced cost for the link and the weight function represents the total link cost for the system (the nodes). Since the nodes make their routing decisions based on the link weights, the preferable situation

Page 64: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

61

would be that the customer experienced cost equalled the system cost, which could be done by using the cost functions as the weight function for the system. This however, is not possible in today’s systems using purely linear weight functions. In Figure 10.4, the functions from Figure 10.3 are derived. The two functions now describe the cost per data unit in the systems and customers perspective.

0

0,5

1

1,5

2

2,5

3

3,5

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

Offered flow

Cos

t per

dat

a un

it

Figure 10.4. Derived cost and weight function

As an example, assume that the link in Figure 10.4 is offered an average flow of 12 data units per time unit, the system and customer experienced cost per additional data unit is then:

( ) 1052.18.01012319.1205.02' 00 =

−⋅⋅+=

−⋅⋅+= p

cf

bvfCo

aoaa

( ) 7.0' == ao

aa wfσ Equation 10.5 then determines what the new link weight should be set to. Depending on how the parameter γ is set ( 10 ≤≤ γ ), the new link weight may be closer to the old link weight or closer to the value of the derived cost function.

( ) ( ) ( ) ( )toa

oaat

oaa ffCf '1'' 1 σγγσ ⋅−+⋅=+ (Equation 10.5)

Routers today, however, can only handle link weights that are made up by integers. To be able to handle small changes in link weights, a constant is added in the routing model. When performing load balancing using short path routing in the model, all link weights are normalised so that the lowest link weight is set to 5000 prior to any

Page 65: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

62

routing. The cost function used for updating the link weights is also normalised so that the lowest possible value is 5000, this is done by simply multiplying the function with 100000. The result of this is that a link may have any integer weight between the values of 5000 and 321560, which is the maximum value of the derived cost function multiplied by 100000. When the link weights have been updated, all nodes recalculate their routing data using the short path routing algorithm (Equation 4.3) and the load balancing update has been made.

10.3.2 Event triggered route data calculation When any event occurs, an event triggered routing update is performed. As mentioned earlier an event could be such thing as a link failure or the detection of a new link. In load balancing using short path routing, an event triggered route data calculation simply recalculates the route data using the short path routing algorithm (Equation 4.3). When a link fails, the node to which the link was going out from remembers the weight of that link. When the link comes up, i.e. when the node discovers it, it gets the same link weight it had before the failure.

10.4 Bottleneck load balancing In bottleneck load balancing, the network is load balanced by eliminating bottlenecks. The load balancing update bases its calculations upon measurements of offered link loads. As in load balancing using short path routing, a quick route data update must be made when any event has occurred.

10.4.1 Load balancing route data calculation When performing a load balancing update in bottleneck load balancing, bottleneck parameters are calculated for each destination node according to the Equations 4.4, 4.5 and 4.6. This calculation is based on the link flow measurements.

10.4.2 Event triggered route data calculation When an event has occurred, an event triggered route data update is performed. This is needed because a quick update must be made and there is no reliable measured data on offered link loads available for the calculation of new bottleneck parameters. It is also necessary because problems may occur when calculating new load sharing parameters (Equation. 4.8) when the old load sharing parameter is set to zero. This can be the situation when a new link has been discovered. Without forcing a node to put some share on such a link may cause this link to never be properly utilised because the Equation 4.8 returns zero. When the event is that a link has failed, the load sharing on that link is set to zero. The proportion of the share of the outgoing flow that belonged to that link is then equally distributed among the other links that provides efficient routing to the destination node.

Page 66: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

63

When a new link is discovered, all load sharing parameters at the parent node is set to zero. The load sharing parameters at that node is then calculated using the shortest path routing with ECMP algorithm. When the system is first initialised, i.e. before any routing takes place, the route data is calculated using the shortest path routing algorithm with ECMP. This is because the bottleneck load balancing algorithm cannot calculate any initial load sharing parameters by itself, it is made to adjust existing ones.

10.5 Load balancing using MPLS In this approach of load balancing using MPLS, every source node (edge LSR’s) shares its outgoing flow between a number of LSPs. This is then made load balanced by updating the flow sharing parameters based on measurements on offered link flows. The LSRs that are available for flow sharing to each source node are colour coded using the same concept as described in Section 5.3.7. Each source node shares its load between a red LSP, a blue LSP and an uncoloured LSP, see Figure 10.5. A red LSP is solely made up by red links and a blue LSP only consist of blue links. An uncoloured LSP may consist of links with different colours. Each defined LSP is the shortest of its kind; there is no other LSP between the same nodes with the same colour that is shorter. Figure 10.5. Coloured LSPs

10.5.1 Load balancing route data calculation To calculate the load sharing parameters at each node, a simple variant of the bottleneck load balancing algorithm is used. Firstly, the offered link flow measurements are gathered. Then the highest offered link load on each LSP is identified. The load sharing parameters are then calculated with Equations 4.9, 4.10 and 4.11 by perceiving each LSP as one link. Load balancing is only performed between the red and the blue LSP, and only when they have lengths equal to the shortest set up LSP.

t s

Page 67: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

64

10.5.2 Event triggered route data calculation Initially, an LSP of every colour and from every source node to every sink node is calculated. If there are more than one possible LSPs from one node to another for a certain LSP colour, one of those LSPs is chosen randomly. The load sharing between the LSPs at all source nodes is initialised according to the rules below: • If one of the three LSPs is shorter than all the others ⇒ This LSP is allotted all of

the outgoing flow. • If both the red and the blue LSP have lengths equal to the shortest LSP ⇒ Share

the outgoing flow equally between the red and the blue LSP. When any event occurs, the affected LSPs are made obsolete and new ones are calculated. The load sharing at affected source nodes is then initialised according to the rules stated above.

Page 68: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

65

11 Analysis In this chapter, the performance of the load balancing algorithms is analysed during normal state and simulated network failures. A more detailed view of the results is presented in Appendix C.

11.1 Scenarios A scenario describes the network topology and the variations in traffic demand. Performance evaluation is performed using four different scenarios. The simulated scenarios are:

• Normal network • Core node failure • Link failure at core level • DWDM system failure

In all scenarios, the traffic demand situation reflects a busy hour. To achieve this, all values of the traffic demand matrix are multiplied with 1.3. In reality, a network failure usually last between 2 to 4 hours [19]. All scenarios have the simulation run length 200 iterations. All simulated network failures last from the 50th iteration to the 100th iteration. Because time is represented as iterations, different updating intervals can be evaluated. If an iteration is said to represent a time of 5 minutes, the failures last for 250 of the total simulated 1000 minutes. The update interval is further discussed in Chapter 12.

11.1.1 Normal network The normal network scenario is interesting to simulate. It gives the possibility to evaluate the performance of the load balancing algorithms in the existing system at normal functionality. It also gives an idea of the convergence time of the algorithms.

11.1.2 Core node failure A core node failure affects the whole network. The core nodes are not only used for traffic from and to the distribution nodes connected to it, but also as run-through for traffic destined at distribution nodes connected at other core nodes. A core node failure will result in failure of all its connected links. In TeliaNet the core nodes are connected to one, two or several other core nodes. The core nodes are not usually connected to the other one in its pair, except in two cases. The underlying distribution nodes are connected to either one core node or both core nodes in a pair. At node failure the traffic from and to underlying distribution nodes will be redirected to the other core node in the node pair. In this scenario, a core node with connection to seven core nodes, plus the other core node in its pair and one peering node is chosen. The node also has a connection to two pairs of distribution nodes.

Page 69: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

66

11.1.3 Core link failure Core link failure implies that a link between two core nodes is out of order in both directions. A link failure might, as an example, occur as a result of interface failure. A link failure will affect the node pairs in the both ends of the link. If the malfunctioning core link is the only core link attached to the core node, all traffic will be routed via the other core node in the pair. If there are other links connected to the troubled core node the traffic will instead be routed via those.

11.1.4 DWDM system failure DWDM stands for Dense Wavelength Division Multiplexing and is a fibre optical technique to increase the capacity on an optical fibre. With DWDM, multiple signals are transmitted simultaneously at different wavelengths on the same fibre. The fibre is transformed to multiple virtual fibres and by multiplexing, the total capacity is increased. DWDM is independent of the protocol and bit rate, which means that it brings the ability to carry different type of traffic at different rates over an optical channel. [20] DWDM systems are used in TeliaNet. A malfunction of the chosen DWDM system would result in failure of eight links.

11.2 Evaluation methods The simulation is evaluated using the congestion cost function defined in Chapter 9. The costs of all links are summed up at each iteration and plotted with respect to the iteration number. The cost is evaluated visually but also numerically. For each simulation the total cost is calculated and compared with the total cost when not using load balancing. The error cost is also used to compare. The error cost is defined as the cost increment caused by network failure when using the shortest path with the ECMP routing algorithm. The lowest, highest and average cost during failure is analysed. The average cost before and after failure is also of interest. When analysing the load balancing algorithms it is also interesting to evaluate their ability to decrease the load of the maximum loaded link in the network. Hence a graph of max link load versus iteration is used.

11.3 Shortest path routing with ECMP The shortest path ECMP algorithm during normal circumstances results in a fixed cost, because the routing is never updated and the cost is therefore never changed. When a failure occurs, the traffic gets routed on alternate paths, since the shortest path may no longer be available. This results in an increase of the cost during failure because the links in the alternate paths get their load increased. In Figure 11.1 the cost for shortest path routing with ECMP is shown during the different failure scenarios. Under normal (failure free) circumstances, the shortest path with ECMP routing algorithm results in a cost of approximately 8594 cost units per iteration. The core

Page 70: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

67

link failure scenario results in a cost increase of approximately 58.4 cost units. A DWDM system failure results in a cost increase of approximately 258.6 cost units. The highest cost during failure, an increase of 3040.6 cost units, occurs during core node failure.

8000

9000

10000

11000

12000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

normal link failure node failure dwdm system failure

Figure 11.1. Cost of Shortest path ECMP

11.4 Load balancing using short path routing

11.4.1 Normal network The cost graph of the simulation with the normal network scenario and the short path algorithm is viewed in Figure 11.2 (note that SP(x,y) in the Figure means load balancing using short path routing with α=x and γ=y).

Page 71: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

68

8593,602

8593,603

8593,604

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l Cos

tECMP SP(0.7,0.005) SP(0.7,0.008) SP(0.7,0.009) SP(0.7,0.01) SP(0.7,0.015)

SP(0.7,0.02) SP(0.7,0.03) SP(0.7,0.05)

Figure 11.2. Cost of short path in initial network

As seen in Figure 11.2, load balancing using the short path algorithm with suitable values of α and γ, converges to a slightly lower cost than shortest path with ECMP routing algorithm. The method is tested with α set to 0.7 and different values of the γ parameter. A low γ value results in a long convergence time and a large γ value results in faster convergence. However, the overall effect of short path load balancing in the normal network is very small. At stable state the algorithm decreases the cost with 0.0015 cost units, which is a total decrease of 5108.1 −⋅ percent.

11.4.2 Core node failure In Figures 11.3, 11.4 and 11.5 the cost graph for the simulation with core node failure is shown.

Page 72: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

69

8000

9000

10000

11000

12000

13000

1 21 41 61 81 101 121 141 161 181 201Iteration

Tota

l cos

tECMP SP(0.7,0.005) SP(0.7,0.008) SP(0.7,0.009) SP(0.7,0.01) SP(0.7,0.015)SP(0.7,0.02) SP0.7,0.03) SP(0.7,0.05) SP(0.7,0.07)

Figure 11.3. Cost of short path at core node failure

11300

11400

11500

11600

11700

11800

11900

12000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.005) SP(0.7,0.008) SP(0.7,0.009) SP(0.7,0.01) SP(0.7,0.015)SP(0.7,0.02) SP0.7,0.03) SP(0.7,0.05) SP(0.7,0.07)

Figure 11.4. Close up of cost with short path during core node failure

Page 73: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

70

8550

8600

8650

8700

8750

8800

8850

8900

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

tECMP SP(0.7,0.005) SP(0.7,0.008) SP(0.7,0.009) SP(0.7,0.01) SP(0.7,0.015)SP(0.7,0.02) SP0.7,0.03) SP(0.7,0.05) SP(0.7,0.07)

Figure 11.5. Close up of cost with short path after core node failure During core node failure the short path algorithm takes some time to converge but results in a lower cost than shortest path ECMP. It is also interesting to see that a large γ value results in an unstable behaviour. The reason is that a larger γ value means a larger change of the weight. This may lead to overcompensation and that problem of overloaded links arises in other parts of the network. In Figure 11.4 the cost graph is zoomed in during the failure and in Figure 11.5 directly after the failure is repaired, when the node is available again. Figure 11.6 shows that a γ value that is too high gives a heavily oscillating and unstable result.

8000

10000

12000

14000

16000

18000

20000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.2)

Figure 11.6. Cost of short path at core node failure

Page 74: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

71

In Figure 11.4 it is seen that the convergence to a steady state during this failure situation at best takes about 25 iterations. The relation between small γ parameter and long convergence time as noticed earlier is also valid in this case. The γ value that results in the lowest cost, with fast convergence and without oscillating behaviour is 0.01. The maximum cost decrease during failure with the short path algorithm and γ value 0.01 is 274.11 cost units. This is a decrease of the error cost with 9.01 %. The average cost decrease during the error is 7.99%. When the core node failure is repaired it takes some time for the algorithm to converge to a stable state. The algorithm generates a lower cost than ECMP after 50 to 70 iterations, with a γ value of 0.01 the number of iterations is 61.

11300

11350

11400

11450

11500

11550

11600

11650

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.1,0.01) SP(0.2,0.01) SP(0.3,0.01) SP(0.4,0.01) SP(0.5,0.01)SP(0.6,0.01) SP(0.7,0.01) SP(0.8,0.01) SP(0.9,0.01)

Figure 11.7. Cost of load balancing using short path with various α values during core node failure The short path algorithm can be adjusted with the γ parameter, but also with the α parameter. The α parameter decides how munch longer path that is approved. In Figure 11.7 simulation has been done with a fixed γ value of 0.01 and varying α values. The simulations show that the α parameter of 0.7 gives the lowest cost. It is also interesting to observe that a high α value makes the algorithm behave unstable. As seen in Figure 11.8, the short path algorithm has the ability to decrease the load on the maximally loaded link during a node failure to a load of 90%. This occurs after approximately 15 iterations but after approximately 10 iterations the maximum link load is below 100%. This means that even though a node failure the routing can be rearranged so no links get overloaded. In Figure 11.8 directly after the failure has been repaired, at the 100th iteration, a peak is shown. This is a consequence of that the repaired links are assigned the same weights they had before the failure. These weights are lower than the weights of the links in the alternative paths, because those weights have been increased during the failure. The consequence is that a large quantity of traffic is sent on the repaired links.

Page 75: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

72

It this case it takes about 50 iterations for the algorithm to adjust after the failure is repaired.

70%

80%

90%

100%

110%

120%

130%

140%

150%

1 21 41 61 81 101 121 141 161 181 201

Iteration

Max

imum

link

load

ECMP SP(0.7,0.005) SP(0.7,0.01)

Figure 11.8. Load of the maximum loaded link with short path load balancing at core node failure To adjust for the problems shown in Figure 11.8, a modification of the short path algorithm was tested. The method to assign weights to the repaired links was modified. Instead of getting their previous weights the repaired links were assigned weights that were twice as large as their previous weights.

70%

80%

90%

100%

110%

120%

130%

140%

150%

1 21 41 61 81 101 121 141 161 181 201

Iteration

Max

imum

link

load

ECMP SP(0.7,0.001) revised SP(0.7,0.001)

Figure 11.9. Load of the maximum loaded link with a modified version of short path load balancing at core node failure

Page 76: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

73

As seen in Figure 11.9, with modified short path algorithm the problem with a load peak is avoided. However, as seen in Figure 11.10 the modified short path algorithm has a very long convergence time after the error has been repaired.

8000

8500

9000

9500

10000

10500

11000

11500

12000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.01) revised SP(0.7,0.01)

Figure 11.10. Cost of modified version of short path load balancing at core node failure

11.4.3 Core link failure

8652,03

8652,0305

8652,031

8652,0315

8652,032

8652,0325

8652,033

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.005) SP(0.7,0.009) SP(0.7,0.01) SP(0.7,0.02)

Figure 11.11. Cost of short path load balancing during core link failure The benefit of short path load balancing during core link failure is small as shown in Figure 11.11. The average improvement is 51057.4 −⋅ . The cost decreases with

Page 77: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

74

51020.9 −⋅ cost units at most, which is a decrease of the error cost of 0.000157%. At the first iteration, when the error occurred, a peak is shown. This peak is of

4102.9 −⋅ cost units.

11.4.4 DWDM system failure In Figure 11.12 the cost of short path algorithm during DWDM failure is shown.

8400

8500

8600

8700

8800

8900

9000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.005) SP(0.7,0.008) SP(0.7,0.009) SP(0.7,0.01) SP(0.7,0.02) SP(0.7,0.03)

Figure 11.12. Cost of short path load balancing during DWDM failure

The short path algorithm with a γ value of 0.009 generates the best average improvement during DWDM error, an improvement of 36.89 %. This is at best a cost reduction of 109.25 cost units, which is a decrease of the error cost with 42.23%. The algorithm takes 71 iterations after the error is repaired to generate a lower cost than ECMP. Due to the long convergence time after the failure is repaired the total benefit of the short path load balancing algorithm for DWDM failure is only 0.22%.

11.5 Bottleneck load balancing

11.5.1 Normal network The cost graph of the simulation with the normal network scenario is shown in Figure 11.14. The bottleneck algorithm converges after only one iteration but it has a steady state only 0.0007 cost units lower than shortest path ECMP. This is a total decrease of

5108.0 −⋅ %.

Page 78: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

75

8593,6028

8593,6029

8593,603

8593,6031

8593,6032

8593,6033

8593,6034

8593,6035

8593,6036

8593,6037

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

tECMP BN

Figure 11.13. Cost of bottleneck load balancing during normal network conditions

11.5.2 Core node failure In Figure 11.14 the cost graph of the bottleneck algorithm during core node failure is shown.

8500

9000

9500

10000

10500

11000

11500

12000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP BN

Figure 11.14. Cost of bottleneck load balancing during core node error Bottleneck is a stable algorithm and at failure and after failure it converges in 13 iterations. At stable state the cost has decreased 46.1 cost units, which is an improvement of the error cost with 1.5 % during failure. The average improvement during failure is 1.4 %. Directly after the error occurs the bottleneck algorithm results

Page 79: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

76

in a peak of 93.9 cost units. This is a consequence of the application of equal load sharing on the neighboring links in case of link failure.

60,00%

70,00%

80,00%

90,00%

100,00%

110,00%

120,00%

130,00%

1 21 41 61 81 101 121 141 161 181 201

Iteration

Max

imum

link

load

ecmp bn

Figure 11.15. Load of the maximum loaded link with bottleneck load balancing at core node failure In Figure 11.15 the link load on the maximum loaded link during core node failure is shown. At the first iteration during error the bottleneck load balancing algorithm generates a load of 118.23%, slightly lower than ECMP on 118.34%. The load is reduced during 4 iterations to a load of 105.32 %. After the error is repaired the bottleneck load balancing algorithm converges in 12 iteration to a value slightly lower than ECMP.

11.5.3 Core link failure Bottleneck load balancing at core link failure is shown in Figure 11.16. In the first iteration after the failure occurred, the cost for bottleneck load balancing is 29.31 cost units higher than for ECMP routing. The peak only lasts for one iteration. Then the bottleneck algorithm gives a cost reduction of 5106.7 −⋅ cost units at most, which is a reduction of the error cost with 0.00013%. The average error decrease is 0.98%. The bottleneck algorithm takes 2 iteration after the link is repaired to generate a lower cost than ECMP.

Page 80: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

77

8580

8600

8620

8640

8660

8680

8700

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

tECMP BN

Figure 11.16.Cost of Bottleneck load balancing during core link failure

11.5.4 DWDM system failure Also in the DWDM system failure case, the bottleneck load balancing results in a cost peak at the first iteration after the failure, see Figure 11.17. The peak is of 225.16 cost units. The maximum decrease during failure is 24.9 cost units, which is a reduction of the error cost with 9.63 %. The average benefit of bottleneck load balancing during error is 19.48 cost units, which is 8.01 %.

8500

8600

8700

8800

8900

9000

9100

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP BN

Figure 11.17. Cost of bottleneck load balancing during DWDM system failure

Page 81: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

78

11.6 Load balancing using MPLS

11.6.1 Normal network The MPLS bottleneck initial cost is higher than the shortest path ECMP cost. But MPLS converges quite fast and only after four iterations the algorithm results in a cost 0.0007 cost units lower than shortest path ECMP. This is a total decrease of

5108.0 −⋅ %. MPLS during normal network is shown in Figure 11.18.

8593,6

8593,61

8593,62

8593,63

8593,64

8593,65

8593,66

8593,67

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP MPLS

Figure 11.18. Cost of MPLS load balancing during normal network conditions

11.6.2 Core node failure The cost function for MPLS at core node failure is shown in Figure 11.19. Load balancing with MPLS at core node failure gives an oscillating result. The cost decrease alternates between 3 and 28 cost units, which is an improvement of the error cost with 0.10% to 0.92 %. The average improvement of the error cost is 0.66%. The reason to the oscillating cost is that an adjustment of the flow sharing for one overloaded link leads to overloaded links in other parts of the network. When the failure is repaired MPLS converges quickly, after only 5 iteration MPLS generates a cost lower than ECMP.

Page 82: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

79

8500

9000

9500

10000

10500

11000

11500

12000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

tECMP MPLS

Figure 11.19. Cost of MPLS load balancing during core node failure

11500

11520

11540

11560

11580

11600

11620

11640

11660

11680

11700

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP MPLS

Figure 11.20. Close up of cost generated by MPLS load balancing during core node failure The load on the maximum loaded link during core node failure and use of MPLS is shown in Figure 11.21. The maximum load is oscillating between 105.33% and 122.20%. After the error is repaired, the maximum load converges to a value lower than ECMP in 4 iterations.

Page 83: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

80

70%

80%

90%

100%

110%

120%

130%

1 21 41 61 81 101 121 141 161 181 201

Iteration

Max

imum

link

load

ECMP MPLS

Figure 11.21. The load of the maximum loaded link with MPLS load balancing during core node failure

11.6.3 Core link failure The cost of MPLS during core link failure is shown in Figure 11.22. MPLS during core link failure results in a cost decrease of 5106.7 −⋅ cost units, which is the same as bottleneck load balancing. The average decrease of the error cost is very small, only 0.00013% compared to ECMP and not visible in Figure 11.22.

8590

8600

8610

8620

8630

8640

8650

8660

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP MPLS

Figure 11.22. Cost of MPLS load balancing during core link failure

Page 84: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

81

11.6.4 DWDM system failure

8550

8600

8650

8700

8750

8800

8850

8900

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP MPLS

Figure 11.23. Cost of MPLS load balancing during DWDM system failure MPLS generates an oscillating cost for DWDM failure as well, see Figure 11.25. The cost is in some cases higher than the cost of ECMP. The lowest cost during error is 14.88 cost units lower than ECMP and the highest 9.19 cost units higher than ECMP. The average improvement of the error cost is 2,76 %.

11.7 Analysis summary The short path algorithm in all scenarios generates the lowest cost during failure. But the algorithm also has a slow convergence time, both during and after the failure. Reducing the load peak of the maximum loaded link was done with the price of the convergence time. The bottleneck load balancing algorithm is a stable algorithm and it has a short convergence time. However, the cost is slightly decreased and the update directly after the error gives an undesirable cost peak. The peak is a result of equal flow sharing when an error first occurred. An alternative to the equal flow sharing is to retain the relations between the remaining links and distribute the flow after these. The MPLS load balancing algorithm is the algorithm with the smallest convergence time. But the cost is heavily oscillating and only slightly decreased. The MPLS algorithm is based on bottleneck load balancing to share load among available paths. One explanation to why MPLS load balancing oscillates and bottleneck load

Page 85: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

82

balancing does not, is that the Bottleneck load balancing algorithm changes the flow sharing as close to the overloaded link as possible. But the MPLS load balancing algorithm only shares flow between entire paths.

11.7.1 Core node failure

8500

9000

9500

10000

10500

11000

11500

12000

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.01) MPLS BN

Figure 11.24. Cost of all algorithms during core node failure As seen in Figure 11.24, the short path algorithm is the algorithm that reduces the cost most during core node failure. But it also has the longest convergence time after the error is repaired.

Page 86: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

83

11.7.2 Core link failure

8580

8600

8620

8640

8660

8680

8700

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.01) BN MPLS

Figure 11.25. Cost of all algorithms during core link failure

The failure of one core link is a small error and it generates the lowest error cost, as seen in Figure 11.25. It is also at this scenario that the load balancing algorithms have the most inadequate result. The improvement is smaller than 10-5 cost units for all the algorithms. The bottleneck load balancing algorithm shows a peak and also has the slowest convergence time after the error is repaired.

11.7.3 DWDM system

8500

8600

8700

8800

8900

9000

9100

1 21 41 61 81 101 121 141 161 181 201

Iteration

Tota

l cos

t

ECMP SP(0.7,0.01) MPLS BN

Figure 11.26. Cost of all algorithms during DWDM system failure

Page 87: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

84

The costs of the load balancing algorithms during DWDM system failure are shown in Figure 11.26. This is the failure where the algorithms give the best result. The improvement for short path is an improvement of 36.89 %. The good result can be explained by the composite of the DWDM system failure. The DWDM system carries links of one colour, which means that an equivalent link is available. The links carried by a DWDM system is also more scattered in the network than the links involved in a core node failure.

Page 88: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

85

12 Signalling analysis

12.1 Basics of signalling The load balancing algorithms requires that routing information be signalled in the network. The information needed depends on the load balancing algorithm. It also requires that load balancing and routing calculations are performed in every node. In following sections the signalling and computation requirements for each load balancing algorithm at every update is analysed. The complexity of the computations differs between the different load balancing algorithms. However this is not taken in to consideration in this chapter, only the total amount of computations is analysed. Table 12.1 contains a summary of the analyses.

12.2 Signalling requirements

12.2.1 Short path load balancing The short path algorithm changes the weights. Each node needs information about the link loads of the outgoing connected links and their present weight. At every update a new distance matrix needs to be calculated. A distance matrix is a matrix of the distance from a node to every other node. In reality the distance to every other router is calculated by the router and kept in its routing table. This is handled by the routing protocol as described in Chapter 2. Every router has the information about the load on the connected links and their weights. The additional data is the data raised by the routing protocol IS-IS. IS-IS is a protocol triggered by changes in the neighbouring network area. When a change occurs the router gets the information, calculates new weights to its neighbours, creates an LSP and floods it. This needs to be done at every weight update. If the weight of all neighbours is not changed simultaneously, several of those LSP updates have to be done for every load balancing update. The number of nodes in the network is 132. Every node broadcast its LSP on every outgoing link, which means that every LSP passes every link. The number of links is 368. The total amount of signalling in the network at every update will be (number of nodes) ⋅ (number of links) = 132 ⋅ 368 = 48576. At every update every node uses the information in the LSPs from every other node to recalculates its routing table. The total number of computations at every update is: (number of nodes) ⋅ (number of nodes-1) = 132⋅131= 17292 computations.

12.2.2 Bottleneck load balancing The bottleneck load balancing algorithm changes the load sharing at every node. Information needed is the current link load and current bottleneck load sharing. This is a recursive algorithm and each computation of a bottleneck parameter starts at the destination node. The destination node computates its bottleneck parameter and sends it to all its neighbours. They perform their computations by data sent from the

Page 89: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

86

destination node and distribute their results to all other nodes with longer distance to the destination node. Every node performs a bottleneck computation for every other node in the network. It this case there are 132 nodes in the network and every node calculates 132 bottleneck parameters at every update. A node also performs bottleneck arc calculation, which is a calculation for every outgoing arc, to the total number of 368. The total number of calculations in the network is: (number of nodes ⋅ number of nodes) + number of links = (132⋅132)+368 = 17792 at every update. A node signals its bottleneck load parameter to every neighbouring node with longer distance to the destination than itself. This is done for every destination node, 132 times. Assuming that only one connected node has a shorter path to the destination than the node it self (i.e. the worst case). The total signalling in the network at every update would be (number of nodes) ⋅ (total of links)= 132⋅ 368 = 48576 times. The triggering factor to calculate new bottleneck parameters can be the receiving of parameters from the neighbours. But to avoid that the load balancing stops when data from any neighbours is missing, a timer would be more appropriate. If new bottleneck parameters is not available the computations should then be performed on old bottleneck parameters. The bottleneck algorithm requires that a method for signalling the bottleneck parameters is implemented in the network.

12.2.3 Load balancing using MPLS The MPLS load balancing algorithm changes the load sharing between the predefined paths. Information needed by the edge router is the load of the most congested link in the path and the current flow sharing. This means that every link needs to signal the flow on each outgoing link to every edge router. The total signalling in the network at every update would be: (number of nodes) ⋅ (number of edge routers) = 132⋅110 = 14520 times. The number of computations at every update would be one at every edge router for every other edge router, in this case (number of edge routers) ⋅ (number of edge routers-1) = 110 ⋅ (110-1) = 11990 computations. Total number of signalling messages

at every update Total number of computations at every update

Short path 48576 17292 Bottleneck 48576 17792 MPLS 14520 11990

Table 12.1. Signalling and computation requirements

Page 90: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

87

13 Conclusions After having performed simulations of the load balancing algorithms for different scenarios, their behaviour was analysed. Also, the signalling requirements of these algorithms were briefly analysed. This chapter covers the conclusions that can be made from this information.

13.1 Evaluation of the load balancing algorithms

13.1.1 Load balancing using short path routing Load balancing using the short path routing algorithm proves to give good results in the different experiments. During core node and DWDM system failure, the algorithm initially lowers the cost and maximum link load moderately and after a few iterations the cost and maximum link load are reduced considerably. If the parameters are set in a good way, the increased cost that comes as a result of the core node failure can be reduced by almost 10% as compared to the current routing in TeliaNet. The corresponding figure for a DWDM system failure is more than 35%. Also, during the core node failure, performing load balancing using short path routing lowers the maximum offered link load of the network from approximately 120% to 90%. After only a few iterations the maximum link load is reduced to less than 100%. However, if the parameter controlling the reaction speed of the algorithm is set to boldly, this results in a heavily unstable and oscillating routing algorithm. For the stability of this algorithm, it is therefore important that it is not set to react too quickly to changes in the network topology and utilisation. Also, for the stability of the algorithm it is important that the parameter controlling the flow sharing is set appropriately; not allowing too long paths and not restricting the algorithm to very short paths. When a network failure is repaired and the network returns to normal functionality, load balancing using the short part routing algorithm quickly lowers the cost significantly. However, it generally takes the algorithm about 40 to 60 iterations to obtain a lower cost than the current routing in TeliaNet. This number will be lower if the failure situation lasts for a shorter period of time. The usefulness of the algorithm highly depends on the expected duration of failures. This must be considered in the total judgement of the algorithm. Using the algorithm also results in a slight over utilisation of the repaired links at return to normal. This problem can easily be reduced but it results in a slower convergence after the failure. A compromise must therefore be done between convergence time and link utilisation. During normal failure-free network conditions, load balancing using the short path algorithm gives no noticeable improvement. The major reason for this is probably the network topology of TeliaNet. The network is built in a way that the gain of load balancing is very small during normal circumstances when measured with the used cost model. The predominant amount of links in the network are normally under utilised, which causes the load balancing algorithm not to react.

Page 91: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

88

The signalling amount needed for load balancing using the short path algorithm is a minor drawback. Under normal circumstances, the signalling needed will be low due to the fact that link weights are not changed if the utilisation of the link is normal. During and after network failure more signalling is needed, but if the failure is relatively local the amount of signalling will stay at a low level. Because the signalling procedure greatly resembles other signalling procedures used today, the signalling part should not constitute any problems for implementing load balancing using the short path algorithm.

13.1.2 Bottleneck load balancing Using bottleneck load balancing does not result in as large improvements as when using load balancing with the short path algorithm. However, it still results in a lower general cost than the routing currently used in TeliaNet. During the DWDM system failure, the bottleneck load balancing algorithm reduces the cost increment due to failure with almost 10%. A small drawback of this algorithm is that it results in a slight cost peak immediately after a failure situation. This is a result of the quick event triggered routing update that is performed when link failures are discovered. The problem is that this updating procedure must be performed quickly and does not have a lot of information to base its decision on. Using a different policy when performing these event triggered updates could probably decrease the size of the problem. A great benefit of the bottleneck load balancing algorithm is that it is very stable and that it reacts very quickly to changes in network topology. After a failure it lowers the cost to a level under that for the routing currently used in TeliaNet within a few iterations. When the network returns to normal functionality, the bottleneck load balancing algorithm also converges to a low cost quickly. Because of this, the gain of the bottleneck load balancing algorithm is less dependent on failure duration than load balancing using short path routing. The signalling amount needed for bottleneck load balancing is relatively large. However, even with the signalling amount taken into account in the judgement of this algorithm, it will most probably result in lower costs than the current routing in TeliaNet. A disadvantage of this algorithm is the more complex signalling procedure needed for its functionality. Implementing this algorithm will probably prove to be difficult due to the complex signalling procedures required and the fact that the signalling must be robust.

13.1.3 Load balancing using MPLS Load balancing using the proposed method for MPLS is the evaluated load balancing algorithm that gives the smallest cost reduction during failure situations compared to the routing currently used in TeliaNet. During the DWDM system failure it reduces the failure cost with slightly less than 3%. An advantage of this algorithm is that it is very stable during normal network conditions and that it quickly after a failure situation converges to a low cost. The gain of using MPLS load balancing probably does not depend so much on the duration of the failures.

Page 92: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

89

During failure situations, load balancing using MPLS tends to oscillate slightly. A reason for this is the fact that it aims at eliminating bottlenecks at the LSPs, but it does not care where in the LSP the bottleneck is situated. Load balancing using MPLS requires a great deal of signalling because every link must inform the edge LSR’s that are using the link in its LSPs of its offered link load. Therefore it is important to keep the number of LSPs at every edge LSR at a low level. However, using a larger number of LSPs may allow for better load balancing due to a larger number of forwarding options. How the LSPs are chosen is also important for the functionality of load balancing using MPLS. For the functionality of the load balancing, two LSPs between the same nodes should contain as few common links as possible. Furthermore the algorithms performance could probably be enhanced by making more intelligent decisions when creating the LSPs. In this master thesis the LSPs were created automatically without any consideration of the suitability of the individual LSP. The MPLS load balancing algorithm has many similarities to the normal MPLS routing algorithm. The main difficulty in implementing this algorithm is to create a functioning and reliable signalling system.

13.2 Validity of results The conclusions that have been made are based on the model of TeliaNet. The analysis results that are the foundation for these conclusions are valid for the specified model. Since the model is a simplified version of the real system, not all factors are included in the model. A simplification that had to be made due to time limitations is that the traffic model is static and deterministic. Because of this, no detailed analysis of how the load balancing algorithms behave when small fluctuations in traffic exist can be made. When choosing the updating interval for the load balancing algorithms, this must be considered. If a too short updating interval is chosen, the load balancing algorithms may behave unstable. It should be the traffic trend and not the normal fluctuations in traffic that influence the load balancing updates.

13.3 Recommendations for future work Dynamic load balancing provides several new possibilities within data communications. Although some of the aspects of dynamic load balancing algorithms have been covered in this master thesis, much is still to be done within the area. It would be interesting to analyse if improvements can be made to the algorithms evaluated in this master thesis. As stated in Section 13.1 the event triggered routing updates can probably be enhanced to get better results when using load balancing. Furthermore it would be interesting to adjust the methods to achieve faster convergence. Other methods to use MPLS for load balancing would also be interesting to study. Also, it would be interesting to implement the algorithms in router software and evaluate the functionality of the algorithms in a test lab.

Page 93: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

90

References [1] Perlman R. (2000). Interconnections Second Edition. Addison-Wesley. ISBN 0-201-63448-1 [2] Forouzan B. (2003). TCP/IP Protocol Suite, Second Edition. McGraw-Hill. ISBN 0-07246060-1 [3] Awduche, et. al. (2002). RFC 3272, Overview and Principles of Internet Traffic Engineering. IETF http://www.ietf.org/rfc/rfc3272.txt (2005-01-14) [4] Alwayn V. (2001). Cisco advanced MPLS design and implementation Cisco Press. ISBN 1-58705-020-X [5] Andersson, et al. (2001). RFC 3036, LDP Specification. IETF, http://www.ietf.org/rfc/rfc3036.txt (2005-01-14) [6] Verbal source. Erik Åman, TeliaSonera, Fixed Network Development. (aug-dec 2004) [7] Lindberg P. (2001). Some propolsals for load balancing. TeliaSonera internal report. TRAB 385/01 1422 [8] Karlsson P-O., Lindberg P. (2002). Using bottleneck load for IP load balancing, 16th Nordic Teletraffic Seminar, August 2002, Espoo Finland. [9] Karlsson P-O., Lindberg P. (2002). Perspectives of Load balancing TeliaSonera internal report. TRAB 386/01 1422 [10] TeliaSonera Annual Report 2003 [11] Patriksson P. (2003), Datacom & Internet Rules - Chapter 3 TeliaSonera internal report 3/03401-FCUA 102 008 [12] Ahlström T. (2002). IGP Routing design for TeliaNet Skanova internal report SKA 145-02 [13] Sahlin P., Widgren Å. (2003). MPLS design for TeliaNet Skanova internal report. SKA 2332-03 [14] Gunnar, Johansson, Telkamp (2004), Traffic Matrix Estimation on a Large IP Backbone. IMC’04 [15] Verbal source. Clas Rydergren Ph.D ITN Linköpings universitet. (aug-dec 2004) [16] Lundgren et.al (2001) Linjär och ickelinjär optimering Studentlitteratur. ISBN 91-44-01798-7

Page 94: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

91

[17] Fortz B., Thorup M. Internet Traffic Engineering by Optimizing OSPF Weights http://bakara.eng.tau.ac.il/~semcomm/ft.pdf (2005-01-15) [18] Svahn E., Svärd T. (2002). Internet Traffic Engineering using Load Balancing Algorithms. Examensarbete. LITH-ITN-KTS-EX—02/32--SE [19] Verbal source. Per Lindberg, TeliaSonera, Fixed Network Developement. (aug-dec 2004) [20] Mynbaev D., Scheiner L. (2001). Fiber-Optic Communications Technology. Prentice-Hall. ISBN 0-13-962069-9

Page 95: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

92

Appendix A – Abbreviations ARIS Aggregate Route Based IP Switching AS Autonomous System BGP Border Gateway Protocol CSR Cell-Switched Routing DWDM Dense Wavelength Division Multiplexing ECMP Equal Cost Multi Path IETF Internet Engineering Task Force IP Internet Protocol IPSec Internet Protocol Security Protocol IS-IS Intermediate System to Intermediate System ISO International Organisation for Standardisation ISP Internet Service Provider LIB Label Information Base LDP Label Distribution Protocol LSA Link State Advertisement LSP Label Switched Path or Link State Packet LSR Label Switch Router MAE Mean Absolute Error MED Multi Exit Discriminator MPLS Multi Protocol Label Switching MRE Mean Relative Error OD Origin to Destination OSI Open System Interconnection OSPF Open Shortest Path First QoS Quality of Service RIP Routing Information Protocol TCP/IP Transmission Control Protocol/Internet Protocol TE Traffic Engineering TSIC TeliaSonera International Carrier TTL Time To Live VPN Virtual Private Network

Page 96: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

93

Appendix B – Flow and loss calculation example Consider the network in Figure B.1 with 7 nodes and 6 links. All links have a capacity of 10 data units per time unit. The traffic demand from origin to destination is shown in Table B.1. Since there only exists one possible route for each OD-pair, no route data is presented.

OD-pair: Origin: Destination: Demanded traffic: 1 n2 n6 3 2 n2 n7 3 3 n1 n6 5 4 n4 n6 5 5 n4 n7 7

Table B.1. Example Traffic demand

Figure B.1. Example network Step 1: The first step is to route all traffic without any capacity limitation. The result

shown in Figure B.2 shows that links 3, 4 and 5 have flows larger than its capacities; they are preliminary overloaded. The link flow and loss can be calculated for links 1 and 2:

of1 = 6 cf1 = of1 = 6

1η = 0

of 2 = 5 cf 2 = of 2 = 5

2η = 0 Figure B.2. Example Step 1

Step 2: The next step is to identify which OD-pairs send data over links 3, 4 and 5. The

OD-pairs 1, 2 and 3 send data over link 3, the OD-pairs 1, 3 and 4 send data over link 5 and the OD-pairs 4 and 5 sends data over the preliminary overloaded link 4.

1

6

2 7 3

4

5(6,0)

(5,0)11

12

13

10

1

6

2 73

4

51

23

4

5

6

Page 97: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

94

Step 3: The OD-pairs 1 and 3 sends data over more than one preliminary overloaded

links. Both OD-pair 1 and 3, however, sends data over link 3 prior to sending data over link 5. The OD-pairs 4 and 5 only send data over one overloaded link; link number 4. Because the data that flows on the preliminary overloaded links 3 and 4 has not passed any other preliminary overloaded links earlier in the routing process, the loss and flow at these links can be calculated:

of3 = 11 cf3 = 3c = 10

1η = 33 cf o − = 11 - 10 = 1

27.01110131

3

31,313 ≈

−=

−⋅= o, f

cqr

27.01110131

3

32,323 ≈

−=

−⋅= o, f

cqr

45.01110151

3

33,333 ≈

−=

−⋅= o, f

cqr

of 4 = 12 cf 4 = 4c = 10

4η = 44 cf o − = 12 - 10 = 2

83.01210151

4

44,444 ≈

−=

−⋅= o, f

cqr

17.11210171

4

45,454 ≈

−=

−⋅= o, f

cqr

Step 4: The next step is to re-route the traffic without any capacity limitations, with the

calculated losses included. The initial traffic demand is routed but at links 3 and 4, the calculated losses for the OD-pairs are subtracted to get the carried flows at these links and the preliminary offered flows at any following links. Se Figure B.3 The link flow and loss for link 6 is calculated:

of6 = 8.56 cf6 = of6 = 8.56

Page 98: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

95

6η = 0

Figure B.3. Example Step 4

Step 5: The link flow and loss for link 5 may now be calculated:

of5 = 11.45 cf5 = 5c = 10

5η = 55 cf o − = 1.45 The OD-pairs 1, 3 and 4 send data over link 5. The data offered to link 5 by each OD-pair is:

73.227.031,31,31,5 =−≈−= rqq 55.445.053,33,33,5 =−≈−= rqq 17.483.054,44,44,5 =−≈−= rqq

Which allows for calculation of the OD-pair specific losses at link 5:

35.045.11

1073.273.25

51,51,515 ≈⋅−=⋅−= o, f

cqqr

58.045.11

1055.455.45

53,53,535 ≈⋅−=⋅−= o, f

cqqr

53.045.11

1017.417.45

54,54,545 ≈⋅−=⋅−= o, f

cqqr

Result: The link flows and losses are shown in Figure 10.6 below. A total of 4.45 data

units are lost.

Table B.2. Example flow and loss

1

6

2 7 3

4

5 (6,0)

(5,0)(10,1)

(10,2)

11.45

(8.56,0)

OD-pair: Origin: Destination: Demanded traffic: Loss:

1 n2 n6 3 0.62 2 n2 n7 3 0.27 3 n1 n6 5 1.03 4 n4 n6 5 1.36 5 n4 n7 7 1.17

Page 99: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Evaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

96

Figure B.4. Example results

1

6

2 7 3

4

5 (6,0)

(5,0)(10,1)

(10,2)

(10,1.45)

(8.56,0)

Page 100: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Appendix C

- Sim

ulation results

Core node failure

EC

MP

SP

SP

SP

SP

SP

SP

SP

SP

SP

MP

LSB

N

(0.7,0.005)(0.7,0.008)

(0.7,0.009)(0.7,0.01)

(0.7,0.015)(0.7,0.02)

(0.7,0.03)(0.7,0.05)

(0.7,0.07)

Total cost1882384,36

1872658,551871149,28

1870942,611870885,27

1870928,341871643,81

1873034,231878602

1887797,571881361,59

1880778,85

compared to E

CM

P(%

)-0,5166752

-0,5968536-0,6078329

-0,6108791-0,6085909

-0,5705824-0,4967173

-0,20093440,28757178

-0,0543337-0,0852914

Before error

Average cost

8593,603638593,60293

8593,603118593,60321

8593,603298593,60292

8593,602938593,60286

8593,602568593,60243

8593,604188593,60291

compared to E

CM

P(%

)-8,128E

-06-6,019E

-06-4,889E

-06-3,917E

-06-8,183E

-06-8,161E

-06-8,161E

-06-1,236E

-05-1,389E

-056,3821E

-06-8,386E

-06

During error

Lowest cost

11634,192511361,4217

11359,953411359,8735

11360,079611360,1696

11359,778511371,557

11417,019211439,114

11606,240611588,0569

compared to E

CM

P(cost units)

-272,77076-274,23908

-274,31901-274,11286

-274,02291-274,41395

-262,6355-217,17331

-195,07847-27,951857

-46,13553

compared to E

CM

P(%

)-2,3445612

-2,3571819-2,3578689

-2,356097-2,3553239

-2,358685-2,257445

-1,8666814-1,6767684

-0,2402561-0,3965512

Lowest error cost

3040,588842767,81808

2766,349762766,26983

2766,475982766,56593

2766,174892777,95334

2823,415532845,51037

3012,636982994,45331

compared to E

CM

P(%

)-8,9709846

-9,0192752-9,021904

-9,0151242-9,012166

-9,0250266-8,6376525

-7,1424754-6,4158121

-0,9192909-1,5173222

Highest cost

11634,192511557,9856

11551,611311551,6113

11551,611311549,0157

11547,046511570,2015

11778,658211974,938

11631,016211728,1356

compared to E

CM

P(cost units)

-76,206867-82,581186

-82,581186-82,581186

-85,176784-87,146009

-63,990956144,465711

340,745512-3,1762352

93,9431265

compared to E

CM

P(%

)-0,655025

-0,7098145-0,7098145

-0,7098145-0,7321246

-0,7490508-0,5500249

1,241733892,92882822

-0,02730090,80747441

Highest error cost

3040,588842964,38197

2958,007652958,00765

2958,007652955,41205

2953,442832976,59788

3185,054553381,33435

3037,41263134,53196

compared to E

CM

P(%

)-2,5063194

-2,7159603-2,7159603

-2,7159603-2,8013253

-2,8660899-2,104558

4,7512412511,2065633

-0,10446123,08963597

Average cost

11634,192511418,9135

11395,574311392,1181

11391,143411391,2143

11400,858611427,3069

11516,058911602,6927

11614,113511591,5249

compared to E

CM

P(%

)-1,8503987

-2,0510077-2,0807151

-2,0890927-2,0884837

-2,0055873-1,7782543

-1,0153997-0,2707517

-0,1725858-0,3667424

Average error cost

3040,588842825,30989

2801,970652798,51444

2797,539772797,61063

2807,254952833,70332

2922,455283009,08906

3020,509882997,92132

compared to E

CM

P(%

)-7,0801728

-7,8477623-7,9614316

-7,9934868-7,9911564

-7,6739705-6,8041269

-3,8852197-1,0359763

-0,6603642-1,403265

After error

Average cost

8593,603638606,1381

8602,948368602,64426

8602,56798602,96267

8605,198728605,61434

8616,028698663,80117

8593,615938599,3093

compared to E

CM

P(%

)0,14585823

0,108740610,10520187

0,104313330,10890704

0,134927030,13976339

0,260950580,81685808

0,000143150,06639442

Num

ber of iterations0

> 10067

7261

5558

5253

> 1005

13

Page 101: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

Core Link Failure

EC

MP

SP

SP

SP

SP

SP

BN

MP

LS

(0.7, 0.005)(0.7,0.009)

(0.7, 0.01)(0.7,0.02)

(0.2,0.01)

Total cost1730294,15

1730294,051730294,02

1730294,091730293,9

1730299,151730347,18

1730294,1

Com

pared to EC

MP

(%)

-6,113E-06

-7,765E-06

-3,707E-06

-1,444E-05

0,000288740,00306471

-2,804E-06

Before error

Average cost

8593,603638593,60294

8593,602928593,60329

8593,602568593,69244

8593,602918593,60418

compared to ecm

p (%)

-7,965E-06

-8,228E-06

-3,917E-06

-1,238E-05

0,00103346-8,386E

-066,3821E

-06

During error

Lowest cost

8652,031548652,03146

8652,031428652,03145

8652,030638652,0314

8652,031468652,03146

compared to E

CM

P(cost units)

-7,596E-05

-0,0001201-9,201E

-05-0,0009101

-0,0001445-7,596E

-05-7,596E

-05

compared to E

CM

P(%

)-8,779E

-07-1,388E

-06-1,063E

-06-1,052E

-05-1,67E

-06-8,779E

-07-8,779E

-07

Lowest error cost

58,42791358,4278371

58,42779358,427821

58,42700358,4277686

58,427837158,4278371

compared to E

CM

P(%

)-0,00013

-0,0002055-0,0001575

-0,0015576-0,0002473

-0,00013-0,00013

Highest cost

8652,031548652,0327

8652,03268652,03246

8652,031828652,03207

8681,344698652,03146

compared to E

CM

P(cost units)

0,001157250,00105638

0,000920160,00027869

0,0005324729,3131538

-7,596E-05

compared to E

CM

P(%

)1,3375E

-051,221E

-051,0635E

-053,221E

-066,1543E

-060,33880082

-8,779E-07

Highest error cost

58,42791358,4290703

58,428969458,4288332

58,428191758,4284455

87,741066858,4278371

compared to E

CM

P (%

)0,00198065

0,001808010,00157487

0,000476970,00091134

50,1697772-0,00013

Average cost

8652,031548652,03153

8652,031498652,03151

8652,030668652,03146

8652,606238652,03146

compared to E

CM

P(%

)-1,183E

-07-5,518E

-07-3,086E

-07-1,022E

-05-8,876E

-070,00664229

-8,779E-07

Average error cost

58,42791358,4279028

58,427865358,4278864

58,427028658,4278363

59,002606558,4278371

compared to E

CM

P(%

)-1,752E

-05-8,171E

-05-4,569E

-05-0,0015138

-0,00013140,98359401

-0,00013

After error

Average cost

8593,603638593,60292

8593,602668593,60317

8593,602118593,60922

8593,841188593,60291

compared to E

CM

P(%

)-8,265E

-06-1,124E

-05-5,347E

-06-1,763E

-056,51E

-050,00276429

-8,386E-06

Num

ber of iterations0

32

20

02

0

Page 102: Evaluation of Load Balancing Algorithms in IP …liu.diva-portal.org/smash/get/diva2:20185/FULLTEXT01.pdfEvaluation of Load Balancing Algorithms in IP Networks - A case study at TeliaSonera

DW

DM

failureE

CM

PS

PS

PS

PS

PS

PS

PS

PS

PM

PLS

BN

(0.7,0.005)(0.7,0.008)

(0.7,0.009)(0.7,0.01)

(0.7,0.02)(0.7,0.03)

(0.7, 0.05)(0.7,0.07)

Total cost 1740500,74

1736962,31736630,65

1736610,611736716,84

1737652,021738861,09

1744614,311750881,02

1740175,61739713,45

compared to E

CM

P (%

)-0,2032998

-0,2223549-0,2235064

-0,217403-0,1636723

-0,09420570,23634437

0,59639597-0,0186809

-0,0452335

Before error

Average cost

8593,603638593,60293

8593,603118593,60321

8593,603298593,60293

8593,602868593,60256

8593,602438593,60418

8593,60291

compared to E

CM

P(%

)-8,128E

-06-6,019E

-06-4,889E

-06-3,917E

-06-8,161E

-06-8,896E

-06-1,236E

-05-1,389E

-056,3821E

-06-8,386E

-06

During error

Lowest cost

8852,160698744,04133

8742,991038742,91261

8743,018368747,89703

8747,951288797,25041

8820,396768837,27809

8827,25761

compared to E

CM

P (cost units)

-108,11936-109,16967

-109,24808-109,14233

-104,26366-104,20941

-54,910286-31,763929

-14,882606-24,903082

compared to E

CM

P (%

)-1,2213895

-1,2332545-1,2341402

-1,2329456-1,1778329

-1,17722-0,6203038

-0,3588268-0,168124

-0,2813221

Lowest error cost

258,557064150,437701

149,387398149,308987

149,414736154,293402

154,347656203,646779

226,793135243,674459

233,653982

compared to E

CM

P (%

)-41,816441

-42,222658-42,252985

-42,212085-40,325203

-40,30422-21,237202

-12,285075-5,7560236

-9,6315614

Highest cost

8852,160698847,77619

8843,217568841,65743

8839,965988828,51545

8957,743139279,75589

9620,64868861,34976

8844,25976

compared to E

CM

P(cost units)

-4,3844992-8,9431349

-10,503257-12,194715

-23,645237105,582439

427,595201768,487911

9,18906938-7,9009318

compared to E

CM

P(%

)-0,0495303

-0,1010277-0,1186519

-0,1377598-0,2671126

1,192730714,83040487

8,68135970,10380595

-0,0892543

Highest error cost

258,557064254,172565

249,61393248,053807

246,362349234,911827

364,139503686,152266

1027,04498267,746134

250,656133

compared to E

CM

P (%

)-1,6957569

-3,4588631-4,0622589

-4,7164502-9,1450749

40,8352558165,377497

297,2217813,55398117

-3,0557788

Average cost

8836,951458757,41942

8748,275258747,17135

8747,69838760,39603

8785,23678873,11053

8942,943278830,24121

8817,47018

compared to E

CM

P (%

)-0,899994

-1,0034705-1,0159624

-1,0099993-0,8663103

-0,58521040,4091805

1,19941607-0,0759339

-0,2204524

Average error cost

243,347825163,815793

154,671628153,56772

154,094674166,792402

191,63307279,506908

349,339641236,637581

223,86655

compared to E

CM

P(%

)-32,68245

-36,440103-36,893736

-36,677193-31,459259

-21,25137314,859012

43,5556864-2,7574705

-8,0055267

After error

Average cost

8593,603638601,3607

8602,62498603,00785

8603,767388606,45923

8607,64218615,07791

8644,720728593,60374

8595,61377

compared to ecm

p (%)

0,090265690,10497661

0,109432880,11827112

0,149595080,16335953

0,249886880,59482724

1,3098E-06

0,02339119

Num

ber of iterations 0

6771

7172

6656

59> 100

313