Quality of Service Routing in the Internet
Total Page:16
File Type:pdf, Size:1020Kb
Quality of Service Routing in the Internet Theory, Complexity and Algorithms Quality of Service Routing in the Internet Theory, Complexity and Algorithms Proefschrift terverkrijgingvandegraadvandoctor aan de Technische Universiteit Delft, op gezag van de Rector Magnificus Prof.dr.ir. J.T. Fokkema, voorzitter van het College voor Promoties, in het openbaar te verdedigen op dinsdag 14 september 2004 om 15.30 uur door Fernando Antonio KUIPERS elektrotechnisch ingenieur geborente’sGravenhage. Dit proefschrift is goedgekeurd door de promotor: Prof.dr.ir. P.F.A. Van Mieghem Samenstelling promotiecommissie: Rector Magnificus, Voorzitter Prof.dr.ir. P.F.A. Van Mieghem, Technische Universiteit Delft, promotor Prof.dr.ir. I.G.M.M. Niemegeers, Technische Universiteit Delft Prof.dr.ir. N.H.G. Baken, Technische Universiteit Delft Prof.dr.ir. C. Roos, Technische Universiteit Delft Prof.dr. J. Domingo-Pascual, Universitat Politècnica de Catalunya Prof. Ing. G. Ventre, Università di Napoli Federico II Dr.ir. H. De Neve, Alcatel Belgium Published and distributed by: DUP Science DUP Science is an imprint of Delft University Press P.O. Box 98 2600 MG Delft The Netherlands Telephone:+31152785678 Telefax:+31152785706 E-mail: [email protected] ISBN 90-407-2523-3 Keywords: QoS routing, algorithm, complexity Copyright c 2004 by F.A. Kuipers ° All rights reserved. No part of the material protected by this copyright notice may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage and retrieval system, without written permission from the publisher: Delft University Press Printed in The Netherlands to Theo, Maria and Carolina vi Contents 1Introduction 1 1.1RoutingintheInternet........................... 1 1.2 Quality of service .............................. 2 1.3Notation................................... 6 1.4 Problem statement ............................. 7 1.5Outline.................................... 8 2 Graphs, algorithms and complexity 11 2.1Graphtheory................................ 11 2.1.1 Graph definitions.......................... 11 2.1.2 Graph representation . ...................... 12 2.2 Classes of graphs .............................. 14 2.2.1 Randomgraph........................... 14 2.2.2 Waxmangraph........................... 15 2.2.3 Power-lawgraph.......................... 15 2.2.4 Lattice................................ 16 2.3Algorithmiccomplexity........................... 18 2.4 NP-completeness .............................. 21 3 Shortest path algorithms 23 3.1Elementarygraphalgorithms....................... 24 3.1.1 Breadth-firstsearch......................... 25 3.1.2 Depth-firstsearch.......................... 25 3.2Classicalshortestpathalgorithms..................... 25 3.2.1 Bellman-Fordalgorithm...................... 27 3.2.2 Dijkstraalgorithm......................... 29 3.2.3 Bi-directionalsearch........................ 31 3.3 Best-firstsearch............................... 36 3.3.1 A* algorithm ............................ 36 3.4Mathematicalprogramming........................ 37 3.4.1 Linearprogramming........................ 38 vii viii CONTENTS 3.4.2 Dynamicprogramming(Floyd-Warshallalgorithm)....... 41 4 Concepts of exact MCP algorithms 45 4.1 Definition of the path length l(P ) ..................... 45 4.1.1 Different(non-linear)lengthfunctions.............. 48 4.1.2 Visualizationofthesearchspace.................. 50 4.2 The k-shortestpathalgorithm....................... 51 4.3 Dominated paths .............................. 54 4.3.1 Definitionofnon-dominance.................... 54 4.3.2 An attainable bound for kmax ................... 56 4.4Look-ahead................................. 60 4.4.1 Thelook-aheadconcept...................... 60 4.4.2 Complexityoflook-ahead..................... 62 4.4.3 Otherlook-aheadapplications................... 62 4.5Bi-directionalsearchinmultipledimensions............... 63 4.6TheSAMCRAalgorithm.......................... 64 4.6.1 Meta-codeSAMCRA........................ 65 4.6.2 ComplexityofSAMCRA...................... 67 4.6.3 ExampleoftheoperationofSAMCRA.............. 69 4.7Conclusions................................. 72 5 Overview of QoS algorithms 77 5.1Heuristics.................................. 77 5.1.1 Jaffe’salgorithm.......................... 77 5.1.2 Iwata’salgorithm.......................... 78 5.1.3 TAMCRA.............................. 79 5.1.4 Chen’salgorithm.......................... 80 5.1.5 Randomizedalgorithm....................... 81 5.1.6 H_MCOP.............................. 81 5.1.7 Limitedpathheuristic....................... 82 5.2 -approximation............................... 83 5.2.1 Puri’salgorithm........................... 84 5.2.2 Xue’salgorithm........................... 84 5.3 Exact algorithms .............................. 85 5.3.1 SAMCRA.............................. 85 5.3.2 HAMCRA.............................. 86 5.3.3 A*Prune............................... 87 5.4Special(non-MCP)QoSalgorithms.................... 87 5.5Performanceevaluation........................... 88 5.5.1 Simulation set-up .......................... 88 5.5.2 Simulationresults.......................... 89 CONTENTS ix 5.5.3 Simulationconclusions....................... 91 5.6Conclusions................................. 92 6 Multicast QoS routing 95 6.1 Problem definition............................. 96 6.2PropertiesofmulticastQoSrouting.................... 97 6.3MAMCRA.................................. 100 6.4DiscussionofmulticastQoSrouting.................... 105 6.4.1 TuningMAMCRA......................... 105 6.4.2 QoSnegotiation........................... 105 6.4.3 QoSmulticastprotocol....................... 106 6.4.4 QoSmulticastinanactivenetwork................ 106 6.5PerformanceevaluationofMAMCRA................... 107 6.6Conclusions................................. 109 7 Link-disjoint QoS routing 111 7.1 Problem definition............................. 111 7.2Relatedwork................................ 113 7.2.1 Link-disjointpathsinonedimension............... 113 7.2.2 Disjointpathsinmultipledimensions............... 114 7.3PathaugmentationforsolvingLPP.................... 115 7.3.1 ThestepsofLBA.......................... 115 7.3.2 LBAisbasedontheshortestpath................ 118 7.3.3 LBAisloop-free.......................... 120 7.3.4 OptimalityofLBA......................... 121 7.4ExtendingLBAtomultipledimensions.................. 121 7.4.1 OperationsofMLBA........................ 121 7.4.2 Problemsinmultipledimensions.................. 123 7.5DIMCRA.................................. 125 7.5.1 OperationsofDIMCRA...................... 125 7.5.2 PropertiesofDIMCRA....................... 128 7.6Conclusions................................. 129 8 The complexity of exact MCP algorithms 131 8.1Relatedwork................................ 131 8.2Worst-casecomplexityanalysis...................... 133 8.3Theimpactoflinkcorrelationoncomplexity............... 139 8.3.1 Theory................................ 139 8.3.2 Simulationresults.......................... 142 8.3.3 Inter-linkcorrelation........................ 148 8.4Theimpactofconstraintsoncomplexity................. 153 x CONTENTS 8.4.1 Theory................................ 153 8.4.2 Simulationresults.......................... 157 8.4.3 Estimationoftheshortestpathlengthinalattice........ 160 8.5Conclusions................................. 163 9 QoS dynamics 165 9.1IntroductiontoQoSstability........................ 165 9.2Relatedwork................................ 167 9.2.1 Trafficprediction.......................... 168 9.2.2 Networkupdatetriggering..................... 168 9.2.3 Networkupdatedistribution.................... 168 9.2.4 Inaccuratenetworkstate...................... 169 9.3 Stability of a path .............................. 169 9.3.1 Mathematicalanalysis....................... 170 9.3.2 Simulations for ∆w ......................... 172 9.3.3 Simulations for ∆l ......................... 174 9.4ConclusionsonQoSstability........................ 176 9.5IntroductiontodynamicQoSalgorithms................. 177 9.6 Problem statement . ............................ 177 9.7 Trafficengineeringalgorithms....................... 178 9.7.1 Overview.............................. 178 9.7.2 Limitations............................. 179 9.8SAMCRA-B................................. 179 9.9Performanceevaluation........................... 180 9.9.1 Scenario 1: influenceofbandwidthconstraint.......... 182 9.9.2 Scenario 2: influenceofoneQoSconstraint............ 183 9.9.3 Scenario 3: influenceofbothQoSconstraints.......... 184 9.10ConclusionsondynamicQoSalgorithms................. 184 10 Conclusions 187 A Approximate analysis 193 A.1ApproximateanalysisofQoScomplexity................. 193 A.1.1 Analysis for a single link weight (m =1) ............. 193 A.1.2 Analysis for multiple link weights (m>1) ............ 195 A.1.3 Perfect negative correlation (m =2)................ 197 A.2Approximateanalysisofpathstability.................. 198 B Abbreviations 203 Bibliography 205 CONTENTS xi Samenvatting (Summary in Dutch) 219 Acknowledgements 223 Curriculum Vitae 225 xii CONTENTS Summary Title: Quality of Service Routing in the Internet: Theory, Complexity and Algorithms An enormous amount of packets daily traverse the Internet towards their intended destination. The Internet consists of many network elements that direct these packets on the correct path leading towards the destination. This process of finding and following a path to the destination is called routing.