SlideShare a Scribd company logo
Efficient Planning and Offline Routing Approaches
for IP Networks
Vom Promotionsausschuss der
Technischen Universität Hamburg-Harburg
zur Erlangung des akademischen Grades
Doktor-Ingenieur
genehmigte Dissertation
von
Eueung Mulyana
aus Bandung Indonesia
2006
ii
1. Gutachter (referee): Prof. Dr. Ulrich Killat
2. Gutachter (referee): Prof. Dr. Friedrich H. Vogt
Tag der mündlichen Prüfung (date of oral examination): 28.02.2006
Acknowledgement
The work presented in this thesis was done during my activity at the Communication
Networks’ Department of the Hamburg University of Technology (TUHH).
I would like to thank my supervisor Prof. Dr. Ulrich Killat for giving me the chance
to work in his department on this interesting topic and for giving me free hand with the
research. Prof. Killat is the person who first got me interested in the problems addressed
in this thesis. Many of his suggestions and criticisms have been of invaluable inspiration
in the progress of this work.
To all colleagues of the department Communication Networks I am very grateful for their
cooperation, support and for many interesting discussions.
Last, but not least, I would like to thank my family: my parents, my wife Ayi, my brothers
and sister and my children. Without their love and support, this thesis would not have been
written.
iii
iv
Und auf der Erde sind dicht beieinander Landstriche und Gärten von Weinstöcken, Kornfelder
und Dattelpalmen, die auf Doppel- und auf Einzelstämmen aus einer Wurzel wachsen; sie werden
mit dem selben Wasser getränkt, dennoch lassen Wir die einen von ihnen die anderen an Frucht
übertreffen. Hierin liegen wahrlich Zeichen für ein verständiges Volk (13:4).
Und Er hat das für euch dienstbar gemacht, was in den Himmeln und was auf Erden ist; alles
ist von Ihm. Hierin liegen wahrlich Zeichen für Leute, die nachdenken (45:13).
Untuk orang-orang tercinta:
mamah, ayi, ageung, teteng, wawah dan teteh
shafiyya dan ibrahim
Abstract
Historically, planning and optimization of communication networks have always been a
central topic in many research efforts. This also holds for the Internet, which emerges
as the most suitable platform for the current and the future multi-service networks and
which shall be able to handle very complex tasks with regard to service quality, guarantee
and reliability. For this reason, researchers are working in two directions: with or without
fundamental changes in the classical Internet Protocol (IP) networks. Therefore, different
approaches for next generation IP networks are proposed.
This dissertation primarily addresses routing issues in diverse IP networks. Routing is one
of the fundamental aspects in communication networks, assuring that the information to
be exchanged between communicating instances always reaches the correct destination.
It has also a direct impact on service quality and delivery. Proper control on routing can
help network operators to balance traffic load, to preventively avoid congestion and, in
general, to efficiently provision resources in the networks, meeting some performance
requirements while minimizing network’s cost.
The scientific contributions of this dissertation are in the following aspects: we present
several efficient algorithm frameworks for dealing with Traffic Engineering (TE) prob-
lems in diverse IP networks, including the classical and MPLS (Multi-Protocol Label
Switching) enabled IP networks with and without service differentiation. In some cases,
specific issues related to over-provisioning and protection are also addressed. Further-
more, since the nature of IP traffic is very dynamic, we pursue investigation of the im-
pacts of demand changes on routing efficiency. Finally, to incorporate traffic variations
explicitly, several simple traffic uncertainty models are introduced and the corresponding
traffic engineering approach under such uncertain traffic conditions is proposed.
v
vi
Kurzfassung
Kommunikationsnetzplanung und Optimierung sind immer ein zentrales Thema bei vie-
len Forschungsaktivitäten. Dies trifft auch auf das Internet zu, das sich den letzten Jahren
als die anerkannte Plattform für derzeitige und zukünftige Mehrdienstnetze entwickelt
hat und als ein Mehrdienstnetz in der Lage sein soll, mit komplexen Aufgaben bezüglich
der Dienstqualität, Garantie und Zuverlässigkeit umzugehen. Über die Frage, ob hierfür
grundsätzliche Änderungen in IP (Internet Protocol) Netzen notwendig wären, sind die
Forscher bisher nicht einig. Daher gibt es unterschiedliche Vorstellungen, wie die nächste
Generation von IP Netzen aussehen soll.
Diese Dissertation behandelt das Routing in unterschiedlichen IP Netzen. Routing ist
eine der Grundfunktionen von Kommunikationsnetzen und gewährleistet das sichere und
Ressourcen-schonende Erreichen des Kommunikationspartners. Ferner hat Routing einen
direkten Einfluss auf die erreichbare Dienstgüte. Optimierte Routingsverfahren kön-
nen unter anderem dazu beitragen, die Netzlast gleichmäßig zu verteilen, Verkehrsstau
präventiv zu vermeiden und im allgemeinen, die Netzressourcen effizient zu verwalten.
Dies sollte einher gehen mit der Etablierung aller gewünschter Verkehrsbeziehungen und
einer Minimierung der entstehenden Netzkosten.
Die wissenschaftliche Beiträge dieser Dissertation liegen in den folgenden Aspekten. Wir
präsentieren effiziente Algorithmen um das sogenannte Traffic Engineering (TE) Problem
in unterschiedlichen IP Netzen zu behandeln. Dies beinhaltet sowohl klassische als auch
MPLS-fähige (Multi-Protocol Label Switching) Netze mit und ohne Dienstunterschei-
dung. In einigen Fällen werden spezielle Themen wie Überdimensionierung und Aus-
fallsicherheit ebenfalls behandelt. Da der IP Verkehr naturgemäß äußerst dynamisch ist,
werden auch die Auswirkungen von Verkehrsänderungen auf die Ressourcennutzung un-
tersucht. Letztlich, um Verkehrschwankungen explizit zu berücksichtigen, werden auch
Modelle für unsichere Verkehrsvoraussagen eingeführt und ensprechende Traffic Engi-
neering Verfahren unter solchen Verkehrsbedingungen untersucht.
vii
viii
Contents
Abstract v
Kurzfassung vii
List of Publications xiii
1 Introduction 1
1.1 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Traffic Engineering . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Multi-Class IP/MPLS Networks . . . . . . . . . . . . . . . . . . 3
1.1.3 Demand Uncertainty . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Network Planning and Optimization 5
2.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Network Planning and Management . . . . . . . . . . . . . . . . . . . . 7
2.3 Optimization Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.1 Linear Programming . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.2 Greedy Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.3 Plain Local Search . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.4 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.5 Genetic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.6 Hybridization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3 Overview of IP Routing 25
3.1 Classical IP Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 IP/MPLS Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3 Differentiated Services . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4 Traffic Engineering in Classical and Transitional IP Networks 37
4.1 Metric-Based Traffic Engineering . . . . . . . . . . . . . . . . . . . . . 37
4.1.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.2 Minimizing Weight Changes . . . . . . . . . . . . . . . . . . . . 43
ix
x Contents
4.1.3 A Hybrid Genetic Algorithm Approach . . . . . . . . . . . . . . 44
4.1.4 Computational Results . . . . . . . . . . . . . . . . . . . . . . . 46
4.2 Traffic Engineering in Hybrid IGP/MPLS Environments . . . . . . . . . 49
4.2.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . 50
4.2.2 Solving with a Genetic Algorithm . . . . . . . . . . . . . . . . . 53
4.2.3 Results and Discussion . . . . . . . . . . . . . . . . . . . . . . . 55
4.3 Partial Demand Increase . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.1 Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.2 Policy and Reoptimization . . . . . . . . . . . . . . . . . . . . . 59
4.3.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.4 Some Aspects Looking for a Chapter . . . . . . . . . . . . . . . . . . . . 64
4.4.1 Better Lower-Bounds . . . . . . . . . . . . . . . . . . . . . . . . 65
4.4.2 Network Failures . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.4.3 Network Dimensioning . . . . . . . . . . . . . . . . . . . . . . . 68
5 Routing and Dimensioning of Multi-Class IP/MPLS Networks 71
5.1 Joint LSP Design and Weight Setting . . . . . . . . . . . . . . . . . . . . 71
5.1.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . 73
5.1.2 A Solving Strategy . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.1.3 Results and Analysis . . . . . . . . . . . . . . . . . . . . . . . . 77
5.2 Network Dimensioning . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.2.1 Mathematical Formulation . . . . . . . . . . . . . . . . . . . . . 81
5.2.2 A Heuristic Approach . . . . . . . . . . . . . . . . . . . . . . . 85
5.2.3 Computational Results . . . . . . . . . . . . . . . . . . . . . . . 88
5.3 Network Dimensioning with Protection . . . . . . . . . . . . . . . . . . 91
5.3.1 Mathematical Models . . . . . . . . . . . . . . . . . . . . . . . . 92
5.3.2 Solving with Heuristics . . . . . . . . . . . . . . . . . . . . . . . 95
5.3.3 Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.4 LSP Design for Multi-Class IP/MPLS Networks . . . . . . . . . . . . . . 97
6 Routing Optimization under Demand Uncertainty 101
6.1 Asymmetrical Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.1.1 Outbound Demand Models . . . . . . . . . . . . . . . . . . . . . 103
6.1.2 Traffic Engineering under Outbound Traffic Constraints . . . . . 104
6.1.3 Inbound Demand Models . . . . . . . . . . . . . . . . . . . . . . 107
6.1.4 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.2 Symmetrical Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.3 Partially Uncertain Demands . . . . . . . . . . . . . . . . . . . . . . . . 114
6.3.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . 115
6.3.2 Results and Analysis . . . . . . . . . . . . . . . . . . . . . . . . 117
7 Summary and Outlook 121
Contents xi
A Hints for LSP Design under Demand Uncertainty 123
B Acronyms 125
List of Figures 127
List of Tables 131
Bibliography 133
Curriculum Vitae 141
xii Contents
List of Publications
1. Eueung Mulyana, Shu Zhang, and Ulrich Killat. Internet Traffic Engineering for
Partially Uncertain Demands. In Proceedings of 19th International Teletraffic Cong-
ress ITC 19, pages 809 - 818, Beijing China, August/September 2005.
2. Eueung Mulyana, Henning Stahlke, and Ulrich Killat. Dimensioning of Multi-
Class Over-Provisioned IP Networks. In Proceedings of 19th International Teletraf-
fic Congress ITC 19, pages 2137-2146, Beijing China, August / September 2005.
3. Eueung Mulyana and Ulrich Killat. Routing Optimization in IP/MPLS Networks
under Per-Class Over-Provisioning Constraints. In Proceedings of the 2nd Inter-
national Network Optimization Conference INOC 2005, pages 551-556, Lisbon
Portugal, March 2005.
4. Eueung Mulyana and Ulrich Killat. Optimizing IP Networks for Uncertain De-
mands Using Outbound Traffic Constraints. In Proceedings of the 2nd International
Network Optimization Conference INOC 2005, pages 695-671, Lisbon Portugal,
March 2005.
5. Eueung Mulyana and Ulrich Killat. Load Balancing in IP Networks by Optimis-
ing LinkWeights. European Transactions on Telecommunications, 16(3):253-261,
May/June 2005.
6. Eueung Mulyana and Ulrich Killat. Optimizing IP Networks in a Hybrid IGP/MPLS
Environment. Annals of Telecommunications, Special Issue on Traffic Engineering
and Routing, 59(11):1373-1388, November/December 2004.
7. Eueung Mulyana and Ulrich Killat. Optimization of IP Networks in Various Hybrid
IGP/MPLS Routing Schemes. In Proceedings of the 3rd Polish-German Teletraffic
Symposium PGTS 2004, pages 295-304, Dresden Germany, September 2004.
8. Eueung Mulyana and Ulrich Killat. Impact of Partial Demand Increase on the Per-
formance of IP Networks and Re-optimization Approaches. In Proceedings of the
3rd Polish-German Teletraffic Symposium PGTS 2004, pages 275-284, Dresden
Germany, September 2004.
xiii
xiv Contents
9. Eueung Mulyana and Ulrich Killat. An Offline Hybrid IGP/MPLS Traffic Engi-
neering Approach under LSP constraints. In Proceedings of the 1st International
Network Optimization Conference INOC 2003, pages 416-421, Evry/Paris France,
October 2003.
10. Eueung Mulyana and Ulrich Killat. An Alternative Genetic Algorithm to Optimize
OSPF Weights. In Proceedings of 15-th ITC Specialist Seminar on Internet Traffic
Engineering and Traffic Management, pages 186-192, Wuerzburg Germany, July
2002.
11. Eueung Mulyana and Ulrich Killat. A Hybrid Genetic Algorithm Approach for
OSPF Weight Setting Problem. In Proceedings of the 2nd Polish-German Teletraf-
fic Symposium PGTS 2002, pages 39-46, Gdansk Poland, September 2002.
Chapter 1
Introduction
In recent years, the Internet has evolved to the most dominant communication network
carrying diverse applications including those, which are traditionally served by dedicated
networks, such as voice and video services. Such different applications certainly require
different levels of Quality of Service(QoS), on which the early IP networks1
unfortunately
were not focused. The Internet was not designed to guarantee a particular degree of
performance but it was created with best effort service in mind where connectivity was
the most important issue [QPS+
03].
For these reasons, the Internet has continuously been a topic of research and has been
enhanced accordingly. Today, to a certain extent, the Internet has proven its important
role in providing efficient data-centric and multi-service applications, so that it is be-
lieved to be the underlying platform for future communication networks, the Next Gen-
eration Networks(NGNs) [ALM+
01]. Generally, when dealing with performance issues,
the corresponding research is termed Traffic Engineering (TE), which is basically com-
posed of two aspects: (i) performance evaluation, which encompasses the application of
technology and scientific principles to the measurement, characterization and modeling
of (Internet) traffic; and (ii) performance enhancement and optimization, which covers
the issues of controlling traffic according to performance requirements, while utilizing
network resources economically and reliably [ACWX02].
The optimization aspects can be achieved though capacity management and traffic man-
agement. The first includes routing control and network resource dimensioning (e.g.
bandwidth, buffer and computational resources). The last includes: nodal traffic control
functions such as admission control, traffic conditioning, queue management, scheduling;
and other functions that regulate traffic flow through the network or that arbitrate ac-
cess to network resources between different packets or between different traffic streams.
Furthermore, these optimization aspects can also be viewed from a control perspective:
1
IP stands for Internet Protocol, the network layer protocol on which the Internet is based
1
2 Chapter 1: Introduction
preventive (offline) vs. reactive (online). In the first case, the traffic engineering control
system takes preventive action to obviate predicted unfavorable future network states. In
the second case, the control system responds correctively and adaptively to events that
have already transpired in the network [ACWX02].
This dissertation addresses planning and management issues in IP networks. Specific
focus is put on routing, which is one of the most significant functions that have to be
performed by the Internet to fulfill its basic task: proper information exchange between
communicating nodes. Thus, here the term "Traffic Engineering" is always referred to as
"routing control". As such a control function can operate at different levels of temporal
resolution, ranging from short (e.g. miliseconds) to intermediate (e.g. days or weeks)
level, we limit the scope of this dissertation to the latter case i.e. to medium-term, or
even to long-term2
, control activities, where the corresponding computation is performed
offline. The challenge of research in this area is to control and to steer traffic through the
network in the most effective way while satisfying some requirements (e.g. performance,
minimization of cost).
1.1 Contributions
Today’s IP networks are diverse, in the sense that many network operators apply differ-
ent instruments in order to meet QoS and other requirements in their networks. Thus,
traffic engineering is sometimes unique for each type of network. This dissertation is
mainly concerned with offline routing control in diverse IP networks. The notion "diverse
IP networks" refers to networks with different routing technologies such as the classical
Interior Gateway Protocols (IGPs)3
, Multi-Protocol Label Switching (MPLS) or hybrid
IGP/MPLS4
. Our contributions are primarily in the aspects outlined in the following Sub-
sections 1.1.1 through 1.1.3.
1.1.1 Traffic Engineering
At first, we propose a novel hybrid Genetic Algorithm (GA) to deal with the trafic engi-
neering problem in the classical IP networks. The algorithm combines a population-based
search capability in GA with a simple individual-based search heuristic, that simulates the
behavior of network’s administrators when they try to reroute traffic on/to a certain link.
The work in this area has been published in [MK02a], [MK02b] and [MK05a].
Afterwards, a traffic engineering approach for several transitional IP networks is pre-
2
We will discuss different time-scales for network planning and management in Chapter 2.
3
In this dissertation, the terms "classical IP networks" and "IGP networks" are used synonymously.
4
Hybrid IGP/MPLS networks will also be called as transitional IP networks.
1.2: Outline 3
sented. The basic idea was to establish a few explicit routing paths by making use of
MPLS, instead of changing link-metric values as in pure IGP networks. Some results
for and the comparison between various hybrid IGP/MPLS schemes are also given. This
work has been reported in [MK03], [MK04b] and [MK04c].
At last, we investigate the impact of partial (non-linear) demand increase and develop a
methodology to decide when and how reoptimization should be performed. Two methods
for reoptimization based on local search frameworks are suggested. The work is published
in [MK04a].
1.1.2 Multi-Class IP/MPLS Networks
Routing in multi-class IP/MPLS networks is much more flexible than in a pure IGP net-
work: (i) routing can be implemented on a per service-class basis; and (ii) both shortest
path and source routing are possible to be deployed. In this regard, we propose an offline
traffic engineering approach for the problem of per-class unsplittable routing in IP/MPLS
networks to specifically address per-class over-provisioning requirements. Such per-class
over-provisioning is a simple, practical and less expensive means for providing QoS. Fur-
thermore, we also consider the problem of dimensioning of such a network under sev-
eral different routing schemes. Novel mathematical formulations and the some heuristic
frameworks for solving these problems are also given. This work is reported in parts in
[MK05c] and [MSK05].
1.1.3 Demand Uncertainty
To obtain accurate demand information between node-pairs in a network is becoming
more and more difficult, particularly as the network size grows. In such a situation, tak-
ing traffic variations explicitly into account when making routing decisions, may provide
a better performance predictability. In this regard, we propose: (i) several simple traffic
uncertainty models based on information of outgoing/incoming traffic from/to each node
in a network; (ii) a flexible traffic model, addressing a situation where demands are com-
posed of both fixed and uncertain parts. The corresponding approach for routing control
under such demand conditions is also presented. This work has been published in parts in
[MK05b] and [MZK05].
1.2 Outline
This dissertation is structured as follows.
4 Chapter 1: Introduction
Chapter 2 describes some fundamental notions for network planning and reviews the op-
timization approaches, focusing on those, which are intensively used for solving the prob-
lems in the subsequent chapters. It first addresses the basic terminology of networks and
network planning. Then, it discusses several optimization approaches, covering linear
programming and some heuristic frameworks.
In Chapter 3, we present a compact overview of routing in IP networks. This embraces the
classical hop-by-hop destination based shortest path routing, routing via label switching in
MPLS enabled IP networks, and also the more flexible class-based routing in IP networks
applying MPLS and service differentiation.
Chapter 4 reveals our novel approach for solving the problem of traffic engineering in clas-
sical and transitional IP Networks. The latter is referred to as combined routing scheme
in classical IP networks, where some nodes are MPLS enabled. Furthermore, this chapter
also discusses the impact of partial demand increase on network utilization and presents
a simple policy and two reoptimization approaches to deal with the issue.
Chapter 5 deals with the problem of offline routing control and with the joint problem of
routing and dimensioning for multi-class IP/MPLS networks. In all problems, we partic-
ularly emphasize over-provisioning constraints, since they are of paramount importance
for providing a good quality of service in the network. Moreover, the resilience aspect
is also considered, by simultaneously planning backup paths for routing under network
failures.
Chapter 6 is devoted to routing optimization under demand uncertainty. At first, the cor-
responding demand models are introduced, the impact on link occupancy is explained
and the corresponding link load calculation is derived. At last, we also introduce the con-
cept of partially uncertain demands to address a situation where traffic is composed of
both fixed and uncertain parts, providing flexibility to deal with common practical cases,
where only a subset of the necessary information can precisely be determined.
Chapter 7 gives a summary of this dissertation and points out some directions for futher
research.
Chapter 2
Network Planning and Optimization
This chapter is devoted to the introduction of some basic issues related to network plan-
ning and optimization. We first review some fundamental notions which are intensively
used throughout this dissertation. Afterwards, a general network planning and manage-
ment framework is presented, providing a clear view to the role of the specific problems
addressed in the following chapters. In the last section, we discuss several optimization
approaches and especially focus on those being used for solving the problems presented
in this thesis.
2.1 Terminology
A communication network consists of equipment interconnected by transmission media,
allowing communication entities (users) to exchange information, which may be voice,
graphics, video or data. A public communication network connects a large collection of
users, that are typically distributed over different geographical locations. The telephone
network is probably the most historical example of a such public network, that exists
since several decades. In recent years, the global computer network (i.e. the Internet)
plays an increasing role and has become a standard platform for the current and future
multi-media communication. From a functional point of view, networks can be subdi-
vided into access and backbone(core) networks. Access networks are connected directly
to customers, while a backbone network joins all access networks together. As our fo-
cus is on backbone networks only, in this dissertation the term "network" always means
"backbone network".
A communication network is an object with a certain structure (often called network
topology) and with a set of attributes. The topology can be viewed as a graph which
consists of nodes connected by links. The attributes describe the network’s status and its
5
6 Chapter 2: Network Planning and Optimization
PSTNIP ATM
Fibers/Cables/Ducts
IP
Optical Layer (e.g. WDM)
Transport Layer (e.g.SDH)
Figure 2.1: An example of multi-layer network architecture
specific configuration e.g. link capacities or routing parameters. A communication net-
work carries communication traffic from ingress (source) to egress (destination) nodes.
This traffic can be thought of as an aggregation of individual customers’ traffic, which is
connected to a common pair of ingress and egress nodes. Since for cost and efficiency
reasons, a network does not always provide a point-to-point physical connection between
node pairs, the network resources have to be shared for all traffic in the network. These
resources may be given in terms of transport bandwidth on the links, switching capacity
or forwarding resources at the nodes.
Traffic demands for a whole network can be pictured as a traffic matrix, in which each
element of the matrix specifies the traffic volume between any two nodes in that network.
In order to fulfil these demands, the corresponding traffic has to be routed through one
or more paths connecting the ingress and egress nodes. The amount of traffic associated
with a route can be thought of as a flow. It is obviously clear, that for the purpose of traffic
routing there shall be sufficient resources available in the network. Therefore, the need
for network planning and management is becoming apparent, since network resources are
limited and correspond directly to factors such as investment or operational cost.
Apart from the functionality to exchange information, communication networks may
completely differ from each other. Differences can exist, for instance, in communica-
tion protocols and thus in nodal equipment and transmission technology. Moreover, due
to the use of digital technology, it is common that a network is working on the top of
another. Figure 2.1 gives such a multi-layer architecture1
. It shows among other things,
1
The notion "Transport Layer" in the figure is not to be confused with OSI Transport Layer. Here, it
is used for the context of general networking i.e. for carrying services with lower data-rates (usually) over
long distances.
2.2: Network Planning and Management 7
that IP networks can make use of either ATM (Asynchronous Transfer Mode) or directly
SDH (Synchronous Digital Hierarchy) networks. SDH networks in turn can use WDM
(Wavelength Division Multiplexing) networks to deliver services2
. A similar layering ar-
chitecture can also be deployed for the PSTN (Public Switched Telephone Network). In
regard to this multi-layer architecture, it is useful to distinguish two types of networks: (i)
traffic networks, where demands are stochastic in nature (e.g. packet, voice or high speed
on-demand circuit); they have also the switching/routing capability to handle short-lived
requests on-demand; and (ii) transport networks, which provide high-data rate services
that are required to be set up on a semi-permanent or permanent basis. Note that in such a
multi-layer architecture, each layer has its own definition of traffic, link capacity and node
functionality [PM04]. This dissertation is dealing with planning and management issues
in IP networks, which can be categorized as traffic networks. For dimensioning problems,
as those to be addressed in Chapter 5, we also need to consider the underlying transport
network, since transport granularities are different from one type of transport network to
another.
2.2 Network Planning and Management
Network Planning and Management (NPM) addresses all activities related to the network
development and evolution. There are basically three NPM activities, which correspond
to different time-scales [PM04]3
:
• long-term (months to years) activities to design or extend the network in order to
meet demands and requirements for a long period of time. These include for exam-
ple: topology design, node and link dimensioning, capacity expansion, routing and
resilience planning.
• medium-term (days to weeks) activities, which cover a list of actions to achieve the
convergence towards the established long-term plans. Routing control (offline) can
also be seen as a medium-term activity, at which routing is reconfigured to meet
service requirements or to obtain a better network usage.
• short-term (real-time to hours) activities, which incorporate real-time operations
such as packet level operations (marking, scheduling, policing, buffer manage-
ment), restoration or online routing control.
Figure 2.2 shows a generic interaction model for the NPM activities both for traffic and
transport networks. Long and medium-term NPM activities consider the current and fore-
2
We refer to [Tan03] for a comprehensive overview of these different types of networks.
3
Different and coarser time granularities can also be used, in particular when planning focuses on trans-
port networks as in [Rob99] and [DDT+
00].
8 Chapter 2: Network Planning and Optimization
and Resource Management
Long−Term Activities
Medium−Term Activities Short−Term Activities
Routing Update Various
Controls
Topology
Forecast,
Capacity Change
Marketing Input
(e.g. new Customers)
Traffic
Data
(Statistics)
Traffic
Data
(Statistics)
Network
e.g. Network Design
e.g. (Near)Real Time Traffice.g. Offline Resource
Management
Figure 2.2: A generic model for Network Planning and Management
cast information regarding customers, services and other strategical issues. The outcomes
of the process are dependent on particular details of the activities. These can be a topo-
logical change, link capacity upgrades, routing updates or even a complete new network
design. For operational networks, current network status and traffic information are also
considered by all NPM activities. They may possibly trigger a new management action
e.g.: (i) if the current situation deviates significantly from the forecast in the case of long
and medium term activities; or (ii) if a specific event such as congestion occurs in the case
of short term management activities.
The issues addressed in this work are mainly related to long and medium-term NPM
activities in IP Networks. The first issue is about offline traffic engineering, which can
be viewed as a medium-term management problem, in order to balance traffic, to avoid
congestion or in general to efficiently provision network’s links for providing a desired
QoS level. In this context, the network has to satisfy the current transmission demands
with the already installed capacities without additional capital investment. The second
issue is about network dimensioning problem, which is usually handled as a long-term
NPM activity. For these reasons, if it is not stated explicitly, in this dissertation we use
2.3: Optimization Approaches 9
the term "planning and management" for the context of long and medium-term activities.
Each NPM activity is carried out in order to achieve certain objectives and fulfill some
requirements. Generally, these objectives and requirements can be in the form of either
efficiency/performance measures or network’s cost. For long-term activities, the former
is usually taken as requirements and the latter as objectives. For medium-term activities,
where no new capital investment is expected, the former is also used as objective. In
large network planning and design, networks have two types of cost: (i) CAPital EXpen-
diture (CAPEX); and (ii) OPerational EXpenditure (OPEX). CAPEX refers to cost that
is primarily due to installation of capacity and equipment in the network while OPEX
refers to cost incurred due to operational needs of the network. Many design problems
are considered under either one or the other category. A network designer might devise a
slick solution that can decrease CAPEX, but on the other hand, can increase OPEX due
to implementation complexity. In fact, there have been many cases where solutions that
save CAPEX never made it to implementation in actual networks, simply because they
are too complicated to be deployed [PM04].
2.3 Optimization Approaches
In the area of Operations Research (OR), optimization is defined as a discipline which
is concerned with finding the maxima and minima of (objective) functions of many vari-
ables, possibly subject to some constraints. The respresentation of an optimization prob-
lem is often called as mathematical program. If the objective is a linear function, and the
constraints are linear equalities or inequalities, the corresponding mathematical program
is called Linear Program (LP)4
.
Most of planning and management problems in communication networks can be de-
scribed by multi-commodity flow models and mathematically formulated by linear or
non-linear systems. The term multi-commodity comes from the fact that there are multi-
ple demands (or commodities) that need to be routed in the network simultaneously and
they compete for available resources (e.g. link capacities). Multi-commodity network
flow problems are frequently pure LP problems as long as, roughly speaking, the objec-
tive function is linear and bifurcated flows are allowed as independent decision variables.
Such pure LP problems in most cases can be effectively solved to optimality using the
well known simplex algorithm.
Unfortunately, many NPM problems are not pure LP problems, since (some) binary/ in-
tegral variables are necessary to be included in the formulation due to technological or
other restrictions. Solving such problems is far from trivial, and usually we can expect
4
Sometimes we also use the acronym LP for Linear Programming.
10 Chapter 2: Network Planning and Optimization
with great likehood that the problems are NP-complete5
and intrinsically can not be solved
in an exact way in a reasonable time for large networks. In other words, in these cases,
optimal solutions are frequently unreachable and one might use approximations to obtain
good, but not necessarily optimal, solutions. Such solution procedures are called heuris-
tic methods or simply heuristics. General heuristics that can be applied to many different
problems are called meta-heuristics. They are basically high level concepts for exploring
solution spaces by using certain strategies, which are often non-deterministic (random-
triggered). Furthermore, a heuristic that always takes the best immediate or local solution
while solving a problem is called greedy heuristic. Such a heuristic is usually problem
specific.
In this dissertation, heuristics are also used for cases where a problem can not be expressed
as a linear program. This would generally mean that: (i) either such a problem is difficult
to be expressed as a mathematical program; or (ii) the resulting formulation is non-linear.
In the following subsections, we will discuss some of these approaches in more details.
Special focus is put on those, which will be intensively used for solving the problems
considered in Chapters 4, 5 and 6.
2.3.1 Linear Programming
As stated earlier, a linear program is a mathematical model, in which the aim is to find a
set of non-negative values for the unknowns or variables which maximize or minimize a
linear equation or objective function, whilst satisfying a system of linear constraints. A
linear program in which some, but not all, of the variables are required to be integers, is
called a Mixed Integer Linear Program (MILP). If it is required that all the variables are
integers, the corresponding linear program is called Integer Linear Program (ILP). For
minimization problems, a linear program6
can be expressed as follows:
minimize z = j cjxj (2.1)
j aijxj ≤ bi, ∀i ∈ [1, m] (2.2)
xj ∈ R+
, ∀j ∈ [1, n]
where xj is the j-th decision variable, cj cost coefficient of variable j, aij coefficient for
variable j in constraint i, and bi right hand side of constraint i. An IP or a MIP can be
5
In complexity theory, the NP-complete problems are the most difficult problems in the complexity
class NP (Non-deterministic Polynomial), in the sense that they are the ones most likely not to be in the
complexity class P (Polynomial). A common and reasonably accurate assumption in complexity theory is
that "P" means "easy" and "not in P" means "hard". We refer to [Mar99], [PM04], [BG00] and [WIK05b]
for formal definitions and further details of the complexity classes.
6
Depending on the context, the notion "LP" is used both to point: (i) to the class of linear program,
which includes MILP and ILP; and also (ii) to the pure linear program i.e. without integrality constraints.
2.3: Optimization Approaches 11
obtained by constraining all or a certain set of xj to be in Z+
. Each set of xj values for
all values of j that is compliant with the constraints, is called a feasible solution. The
optimal solution is the feasible solution that minimizes the objective function.
Pure LP problems can be solved using the famous simplex algorithm. The set of all fea-
sible solutions to a given LP problem is a convex polytope7
formed by the intersection of
hyperplanes8
, which are defined by the constraint equations. If a unique solution exists
it is at a vertex of the polytope. To avoid labourous investigation of an excessive num-
ber of vertices the simplex method provides a systematic computing scheme progressing
from vertex to vertex in a direction of improving the objective function. Another popular
solving method for LP problems, known as Interior Point Method (IPM), was introduced
since the simplex method suffers from the exponential worst case behavior. However, for
most practical applications, the simplex approach is proven to be very efficient.
Infeasible or Integer?
no
Bounding
Initialize;
Mark the node as inactive;
yes
Are there still active nodes?
Choose an active node;
Mark the node as inactive;
END
Solve LP on these nodes;
Branching(create 2 active nodes);
no
no
yes
yes
Solve LP relaxation of root node;
Infeasible or Integer?
Figure 2.3: The Branch and Bound algo-
rithm
INFEA
z = −14
(2 ; 2)
INT
z = −13.5
(1.5 ; 3)
FRAC
x <= 31
x >= 41
x <= 12 x >= 22
x <= 21
x >= 31
x <= 22 x >= 32
A
B C
D E
F G
IH
z = −16.5
(3.5 ; 1.5)
FRAC
INFEA
z = −16
FRAC
(3 ; 1.75)
z = −13
(3 ; 1)
INT
z = −15.5
FRAC
(2.5 ; 2)
(2 ; 2.25)
FRAC
z = −15
Figure 2.4: An example of BB-tree
The standard algorithm for solving ILP and MILP problems is Branch and Bound (BB),
which is basically a technique to speed up enumeration in a search tree. As indicated by
7
A polytope can be thought of as the generalization to any dimension of polygon in two dimensions.
8
A hyperplane is an N-dimensional analogy of (two-dimensional) plane in (three-dimensional) space
and divides the N + 1 dimensional space into two half-spaces.
12 Chapter 2: Network Planning and Optimization
its name, two fundamental operations in BB are: (i) branching i.e. the process and the
strategy of creating two child subproblems from a parent problem; and (ii) bounding i.e.
the process to get upper and lower bounds within a feasible subproblem. As an effect
of branching, instead of solving the "difficult" parent problem, we try to solve a set of
"easier" child subproblems. Futhermore, with the help of the established bounds, some of
the child subproblems can be discarded. Lower bounds9
can be found e.g. by relaxation
techniques. The LP relaxation of an ILP or a MILP is the linear program obtained by: (i)
considering the same objective function; (ii) considering the same constraints; and (iii)
relaxing the integrality property of the variables. The optimal value of the LP relaxation
is the lower bound of the optimal value of the original ILP or MILP problem. Thus, if the
optimal solution of the LP relaxation is compliant with the integrality constraints , it is
also the optimal solution of the original ILP or MILP problem.
Figure 2.3 depicts the branch and bound algorithm. It will be explained by making use of
a BB-tree (as shown in Figure 2.4) for the following problem:
minimize z = −3x1 − 4x2
subject to 2x1 + 4x2 ≤ 13
−2x1 + x2 ≤ 2
2x1 + 2x2 ≥ 1
6x1 − 4x2 ≤ 15
xj ∈ Z+
, ∀j ∈ {1, 2}
At the beginning, the root node10
is defined and solved (e.g. by using the simplex al-
gorithm). Since, as indicated by node A in Figure 2.4, the solution is fractional, i.e.
(x1 = 3.5; x2 = 1.5), the algorithm will continue with branching. Suppose that we do
branching on variable x1 as shown in the figure, forming nodes B and C. Node C is in-
feasible, while node B is fractional. Thus, node B is further processed. Since an integer
solution is not yet found so far, the bounding procedure is not performed and the process
is continued with branching. The results are nodes D and E. Now, node D is integer and
used as temporary upper bound (best solution). Node E is fractional and processed by
the bounding procedure. In this case the lower bound at E (z = −15.5) is better than
the current upper bound (z = −13). So it will again do branching, which yields nodes F
and G. Node G is infeasible and node F is fractional with z = −15 which is still better
than the upper bound. Branching at F results in nodes H and I. Node H is integer, which
is better than the current upper bound. Thus it is adopted as the temporary upper bound
value. Node I is fractional with z = −13.5 which is worse than the current upper bound
with z = −14. Hence, it will be discarded. Since there are no more active nodes, the
algorithm terminates and the temporary best solution is becoming the final solution of the
problem.
9
As from now, if it is not explicitly stated, it is always assume that we consider minimization problems.
10
Note that a node in terminology of BB represents a subproblem, except the root node which represents
the original LP relaxation problem.
2.3: Optimization Approaches 13
Convex Hull
2
x1
LP Relaxation
x
Figure 2.5: An illustration of feasible regions: LP relaxation vs. convex hull
Although the branch and bound approach can considerably reduce the number of sub-
problems to be evaluated, the remaining number will often still be so large that it heavily
reduces the size of the problems that can be handled. The efficiency of BB depends on
the quality of the lower bounds obtained by solving node problems of the BB-tree. If
these bounds are close to the optimal integer solution then we can expect that the majority
of the nodes will never be visited as most of the BB-tree branches will not be entered.
Therefore, it may happen that it is advantageous to spend more time in a node and try to
find a better lower bound than the one resulting from simple LP relaxation [PM04]. This
is the basic idea behind an enhancement of BB technique called Branch and Cut (BC).
The basic way to achieve better lower bounds is to construct valid inequalities in the
BB-tree nodes. Such inequalities are generated and inserted to problems, on top of the
standard constraints. The idea is to exploit the integrality of variables in order to produce
inequalities that are valid for all integral solutions and at the same time remove parts
of the polytope which contains non-integral optimal solutions. It is also desirable that
such inequalities define the faces (facets)11
of the convex hull12
of the solution set for the
original problem. For clarity, Figure 2.5 shows the depiction of the feasible regions of an
LP relaxation and of a convex hull of the non-relaxed problem. If we can find a set of
valid inequalities defining the convex hull of a problem, the corresponding problem can
be solved easily since the solution of an LP for the transformed problem will always be a
feasible solution of the original MILP/ILP problem.
For solving the problems addressed in this dissertation, insofar LP, MILP or ILP are con-
cerned, a commercial solver tool called CPLEX [CPL01] is used. For MILP and ILP
11
A facet is a part of a hyperplane, forming a boundary for a polytope.
12
A convex hull is the smallest polytope containing all feasible solutions of the non-relaxed version of a
problem.
14 Chapter 2: Network Planning and Optimization
problems, it exploits a (type of) branch and cut algorithm. Since it is a general solver, the
cuts (i.e. valid inequalities) added to the model are also very general (we refer to [CPL01]
for the details) i.e. CPLEX does not exploit specific structures of the considered problem.
There are currently many publications addressing the issue of performing specific cuts for
specific problems. However, such an approach is beyond the scope of this dissertation.
2.3.2 Greedy Heuristics
Greedy Algorithm for Routing Problem
for all demands d ∈ D do
determine all possible routes Rd;
for all possible route r ∈ Rd do
calculate incremental cost for assignment d to r;
end for
select route r with the lowest cost;
establish demand d on the chosen route r;
end for
Figure 2.6: A greedy algorithm for routing problem
Greedy heuristics are simple and straightforward. They are called "greedy", in the sense
that in each algorithm step they take decisions on the basis of information at hand without
regard for future consequences. In other words, in each phase the algorithms decide for
a local optimum in the hope that at the end they reach a near if not a global optimal so-
lution. The main benefit of such algorithms is, that they can construct a feasible solution
very fast. Figure 2.6 gives an example of a greedy algorithm for solving network’s routing
problem, in order to minimize a certain cost parameter. It basically tries for each elemen-
tary demand d to assign a route r, which is optimal at the time the allocation is done (i.e.
locally optimal). Surely, with this allocation strategy, an end result is very much depen-
dent on the sequence, in which the demand pool D is processed. And by using such a
mechanism (as a part) in our optimization procedure, we essentially transform our prob-
lems to sequential ordering problems (SOPs). The effectiveness of such an approach has
been previously investigated for example in [Bec01].
2.3.3 Plain Local Search
Local search is a meta-heuristic search algorithm, which is based on the concept of neigh-
borhood. A neighborhood of a solution vector x is a set of solutions that are in some
sense close to x, for example because they can be easily computed from x or because they
2.3: Optimization Approaches 15
Plain Local Search PLS−1
x∗
← xo;
while (not stopCriteria) do
x ← move(x∗
);
evaluate(x );
if(x better than x∗
) x∗
← x ;
end while
C
*
D
x (A)
x (C)*
x (B)*
B Neighborhood
Neighborhood
Neighborhood
of
of
of
A
Figure 2.7: A general Plain Local Search PLS−1 framework
Plain Local Search PLS−2
x∗
← xo;
while (not stopCriteria) do
x ← move(xo);
evaluate(x );
if(x better than x∗
) x∗
← x ;
end while
Neighborhood of
*x (A) = xo
B
C
D
EA
Figure 2.8: A general Plain Local Search PLS−2 framework
share a significant amount of structure with x. For example in many combinatorial opti-
mization problems, solutions can be represented as sequences or vectors. These solution
representations enable the use of p−exchange neighborhoods i.e. neigborhoods that are
obtained by exchanging p elements in a given sequence or vector [AL03].
The basic principle underlying local search is to start from an initial candidate solution
xo and then, iteratively, make moves from one candidate solution to another candidate
solution from its direct neighborhood (x ). This is illustrated in Figure 2.7. Let the best
temporary solution be denoted by x∗
. At each iteration a move operator is called, to pick a
neighbor x around x∗
. If the neighbor x is better than x∗
, x will be adopted as the new x∗
;
otherwise the algorithm proceeds with another move action. The "walk" in the solution
space is visualized in Figure 2.7 right. Point A represents the initial solution xo, which
is also the initial best solution x∗
(denoted by x∗
(A)). The circle around A illustrates
the neighborhood around x∗
(A). The algorithm performs a move operation (indicated by
an arrow) to point B which is a neighbor of A and better than x∗
(A). At point B, the
corresponding neighborhood is also searched to find better solutions than x∗
(B), which is
for example the point C. The search process is continued till the predefined stop criteria
are satisfied.
The above explained local search algorithm will be referred to as Plain Local Search PLS-
1, in order to distinguish it from a slightly different variant named PLS-2. Sometimes
16 Chapter 2: Network Planning and Optimization
1st Neighborhood
3rd Neighborhood
*x (A) = xo
2nd Neighborhood
B
C A
E
D
F
of
Figure 2.9: An example for a variable neighborhood structure applied to PLS−2
we want to find solutions which still have significant similarities with the given initial
solution. In this case, we can concentrate searching on neighborhoods around a static
solution point. Such local search algorithm and an example of moving paths in a single
neighborhood are displayed in Figure 2.8.
In order to increase the chance to escape from local optima, sometimes it is worth to de-
ploy a variable neighborhood structure. Let Λ be a set of numbers, where each p ∈ Λ
is representing the number of different elements of the current solution x and a neigh-
bor x in the neighbourhood structure Hp. Figure 2.9 shows an example for a variable
neighborhood structure around a static solution point (PLS-2) with three different types
of neighborhoods. The search can be configured in such a way, that smaller neighbor-
hoods are explored first and a larger neighborhood is chosen if the the previous smaller
neighborhood is completely13
explored. Thus, Hp can be characterized by the following
function:
Y(x, x ) = j Yj(x, x ) = p ∀x ∈ Hp(x) (2.3)
where
Yj(x, x ) =
1 if the j-th element of x is not equal than that of x
0 else
(2.4)
Hp(x) ∩ Hq(x) = ∅, ∀p = q ∈ Λ (2.5)
13
In fact, due to the huge number of possible solutions, we do not perform exhaustive search in a neigh-
borhood. Instead, we define a criterion, for which it can be assumed that a neighborhood is completely
explored.
2.3: Optimization Approaches 17
Simulated Annealing
x∗
← xo; x ← xo; T ← To;
while (not stopCriteria) do
while (not equilibrium(T)) do
x ← move(x);
evaluate(x );
p ← computeProbability(T, x , x);
if(accept(x , p)) x ← x ;
if(x better than x∗
) x∗
← x;
end while
T ← update(T);
end while
F
Neighborhood
A
of
xo
xo
Solution Space
B
C
D
E
G
Figure 2.10: A general Simulated Annealing framework
The property (2.5) is necessary in order not to explore again the previously searched
neighborhoods. The concept of variable neighborhood as discussed above, is universal
and can be applied to all meta-heuristics based on local search framework. This includes
the PLS−1 or simulated annealing, which will be addressed in the next subsection.
2.3.4 Simulated Annealing
Simulated Annealing (SA) was invented in 1983 by Kirkpatrick, Gellat and Vecchi, in-
spired by the physical process of cooling down a material in a heat bath i.e. a process
known as annealing. It belongs to the oldest meta-heuristics and is one of the first algo-
rithms which had an explicit strategy to avoid local optima by allowing moves towards
less performing solutions with a certain probability, which is a function of the parame-
ter called temperature. The probability of doing such a move is decreasing during the
search. Here we focus on a general SA framework as displayed in Figure 2.10. Similar
to the plain local search approach, in each iteration step a move operator is called to pick
a neighbor x around the current solution x. But here we explicitly distinguish between x
and the temporary best solution x∗
, since as stated earlier, the solution x is also allowed
to move to less performing solutions. After evaluating x and computing the acceptance
probability p, it will be checked whether x is accepted and whether x∗
needs to be up-
dated. The temperature is decreased each time the equilibrium for the current temperature
is reached. The search process is terminated if the system is frozen i.e. all stopping cri-
teria are satisfied. If ψ(x) represents the objective value of the solution x and T denotes
the parameter temperature, the acceptance probability for minimization problems can be
18 Chapter 2: Network Planning and Optimization
expressed as follows:
p =
1 if ψ(x ) < ψ(x)
exp(−ψ(x )−ψ(x)
T
) if ψ(x ) ≥ ψ(x)
(2.6)
It simply says that: (i) if the neigbor x is better than the current solution x (i.e. ψ(x ) <
ψ(x)), then x will be updated by x ; (ii) if the neighbor is worse than the current solution,
x can still be accepted as x with the probability p; and (iii) the lower the temperature
(i.e. the longer the algorithm’s running time) and the worse the quality of the neighbor,
the lower the value of p. An abstract visualization for the moving path in the solution
space for simulated annealing is depicted in Figure 2.10 right. Two paths are available in
the figure, indicating the moving path for the temporary current solution x (i.e. the path
A-B-C-D-E-F-G) and that for the temporary best solution x∗
(i.e. the path A-D-F). As
can be seen in the Figure, during the search, x can leave the best temporary solution x∗
and not find it again.
Temperature
The starting temperature T shall enable that in the beginning nearly all perturbations are
accepted. In practice, T can be chosen as the objective value of the initial solution i.e.:
To = ψ(xo) (2.7)
A cooling schedule (updating rule) for the temperature could be in the form of:
Tk+1 = γ · Tk (2.8)
where Tk is the current temperature, Tk+1 is the temperature of the next iteration and
γ is a decreasing factor less than 1. At the end, T should be so small that only a very
small number of perturbations is accepted i.e. almost only improving solutions should be
accepted.
Equilibrium and Frozen State
Equilibrium and frozen state can be defined according to some parameters. The easiest
way is by using a simple and general criterion such as a predefined number of iterations.
Note that the equilibrium state is measured only for a constant temperature value, while
the frozen state for the whole process. Several other parameters can also be used in
combination with a maximum number of iterations e.g.: (i) if ψ(x∗
) is not improved at
least % after K1 iterations; or (ii) if the number of accepted moves is less than % of
the last K2 iterations (recall that a move will be accepted on a random basis depending
on the probability value p). Furthermore, for the frozen state we could also look at the
temperature value e.g. when the temperature gets below a predefined constant Tmin the
system is assumed to be frozen.
2.3: Optimization Approaches 19
2.3.5 Genetic Algorithms
no
Regeneration
Crossover
Mutation
Parents Selection
Initialize Population
Stop Criteria fulfilled ?
END
yes
Survivors Selection
Figure 2.11: A general Genetic Algo-
rithm framework
(best 50 chromosomes)
00
0000
11
1111
00
0000
11
1111
50 Chromosomes
Population
Population
Selection
(remove 10%)
45 Chromosomes
Selection (parents)
10 Chromosomes
Offsprings
10 Chromosomes
Selection
Population
55 Chromosomes
Crossover
Mutation
Figure 2.12: An example of population dy-
namics
Genetic Algorithms (GAs) were introduced by Holland in 1975, inspired by nature’s capa-
bility to evolve individuals influenced by adaptation to the environment. In the optimiza-
tion context, genetic algorithms use the concepts from population genetics and evolution
theory in order to optimize the fitness of a population of individuals through recombi-
nation (crossover) and mutation of their genes. Figure 2.11 shows a block diagram of a
common GA implementation. At first, a solution in the problem domain has to be ap-
propriately encoded and transformed to a chromosome14
in GA domain. The encoding
mechanism is usually problem specific i.e. it depends much on the problem under con-
sideration. At the beginning of the algorithm, the population has to be initialized i.e.
some individuals or chromosomes have to be generated randomly or according to a cer-
tain rule. After this, the evolution phase is taking place. The evolution consists of some
mechanisms to perform selection and to form new individuals using genetic operators
called crossover and mutation. Generally, crossover is intended to exploit the structure
present in the available (good performing) individuals, while mutation is used to increase
the capability to explore the solution space without getting stuck in local optima. Both
of these genetic operators aim at producing some (hopefully) better individuals for the
next iteration. The least successful individuals (according to their fitness parameter) from
the previous iteration will naturally be removed and then be substituted by the new ones.
Applying the described processes in many iterations we continously improve the average
quality of the solutions until the predefined stopping criteria are met. As in PLS and SA
14
Throughout this dissertation we use the terms "chromosome" and "individual" interchangeably.
20 Chapter 2: Network Planning and Optimization
frameworks, the stopping criteria can be derived from the standard parameters: the maxi-
mum number of iterations, the improvement status of ψ(x∗
) or their combination. In what
follows, some general implementation issues will be discussed.
Population Dynamics
There are no standardized rules to decide how many chromosomes should be in the pop-
ulation, since the size of the population is not directly correlated with the quality of the
solutions. Figure 2.12 shows an example of population dynamics in a genetic algorithm.
The size of the population is hold constantly at 50 individuals. Some of them, in this
case 10 individuals, are selected as parents of the new individuals. Survivors of current
generation are then selected by removing several individuals. After that, the population
for the next generation is constructed by applying once again the selection mechanism,
holding the population size the same as the previous generation.
Selection
Selection is done based on fitness. There are basically two selection mechanisms: (i)
parents selection to get some parent individuals for a new generation; and (ii) survivors
selection, which is intended to keep best individuals within the population and remove a
certain number of the least performing individuals in the current generation. For parents
selection we should find a strategy that: (i) ideally gives better individuals a better chance
of being parents than less good individuals; and (ii) also gives less good individuals at
least some chance of being parents, as they may provide some useful genetic material.
This task can be fulfilled by a so-called rank selection: individuals in the population are
ranked and each of them receives a probability value (to be selected) from this ranking.
The probability value is measured relative to the probability value of the last (i.e. worst)
individual; this means the last but one will have twice that probability etc. Of course these
values have to be normalized such that the sum of these probability values must equal
one. Afterwards, the probability values are mapped on the corresponding non overlapping
intervals in the range [0, 1] and a randomly chosen number in this interval is used to select
an individual. For survivors selection, we can simply sort the individuals according to
their fitness from best to worst and then remove some of the least performing individuals.
Forming New Individuals
New individuals are generated by two standard GA operators: crossover and mutation.
Crossover produces new individuals that inherit genes from their parents. On the other
hand, mutation enables offsprings to have different genes as those from their parents.
2.3: Optimization Approaches 21
SA / GA PLS
1
10
0
Figure 2.13: A hybridization scheme between SA/GA and PLS
Since both crossover and mutation are dependent on how a chromosome is encoded, de-
tails of such mechanisms are also problem specific and can not be discussed until the
problem and the corresponding encoding mechanism are defined.
2.3.6 Hybridization
Each optimization approach mentioned above has its own advantages. Therefore, it is
sometimes worth to make a hybridization of two or more approaches, combining their
advantages together. In this subsection, two types of hybridization will be introduced.
Firstly, we combine PLS together with SA or GA. PLS is very simple and usually has
a good convergence behavior i.e. for relatively short execution time it can find good
solutions. Unfortunately, it can also get stuck in local optima, simply because it has
no explicit mechanism to avoid such a situation. On the other hand, SA or GA based
approaches are theoretically able to explore a larger solution space and thus to avoid local
optima. But they have a relatively slower convergence behavior. The basic idea behind
the hybridization is illustrated in Figure 2.13. It shows the execution process of PLS or
SA/GA as a function of a boolean variable σPLS, which indicates whether a condition for
performing PLS is satisfied (σPLS = 1) or not (σPLS = 0).
In the case of SA-PLS approach, this hybridization can easily be performed in a normal
SA approach, by modifying the acceptance probability as follows:
p =



1 if ψ(x ) < ψ(x)
exp(−ψ(x )−ψ(x)
T
) if ψ(x ) ≥ ψ(x)and σPLS = 0
0 otherwise
(2.9)
This means if σPLS = 1, the probability p will have the value of 1 if the neighbor x is
better than x, and the value of 0 if x is worse than x. This is the behavior of PLS. For
σPLS = 0 equation (2.9) is equivalent to (2.6). Note that for a quite low temperature
value, which is roughly equivalent with a long execution time, a normal SA behaves
approximately like PLS. Thus, this modification mainly effects the SA characteristics at
high temperature values.
22 Chapter 2: Network Planning and Optimization
(best 50 Chr.)
000000000
000
111111111
111
000000000000
111111111111Population
45 Chromosomes
Population
Search result
55 or 56 Chromosomes
(1 or 0 Chr.)
PLS
Crossover
Mutation
1 Chromosome
Selection (parents)
10 Chr.
Selection
Population
50 Chromosomes
(remove 10%)
10 Chr.
Offsprings
Selection
Figure 2.14: Population dynamics in a hybrid GA-PLS scheme
For the case of GA-PLS approach, it is a bit more complicated, mainly because genetic
algorithm is a population based (multi-agent) approach, while PLS is a single-agent ap-
proach. One possibility is to construct a quasi parallel PLS process at a certain GA evo-
lution cycle (iteration), where the variable σPLS has the value of 1. This possibility is
displayed as a part of population dynamics in Figure 2.14 (cf. Figure 2.12). Here, an
individual is selected from a number of best individuals in the population and used as
input for the PLS process. If PLS is able to find a better solution (than the original input
individual), it will be sent to the population as a new individual.
Note that for such hybrid approaches, the PLS function is active if σPLS = 1. In both
SA-PLS and GA-PLS approaches, this activation can base on the simple criteria such as:
(i) if a certain number of iteration is reached; or (ii) if the best temporary solution x∗
is
just improved. Furthermore, in simulated annealing it is also possible to activate PLS, if
the neighborhood around x∗
is not yet completely explored.
Due to the huge number of possible solutions, performance of stochastic search ap-
proaches is sometimes still far from expectation e.g. in terms of convergence or solu-
tion quality. But often, the existence of simple problem-specific heuristics can improve
performance a lot. In this regard, a hybridization between such a simple heuristic and
a stochastic search algorithm is of particular importance. Figure 2.15a gives a general
diagram of a hybrid algorithm, which makes use of simple improving heuristics. Search
algorithms meant in the diagram are stochastic search algorithms e.g. PLS, SA, GA, SA-
2.3: Optimization Approaches 23
Algorithm
Solution e.g. in terms of a
Sequence of Demands
(b)
Improving
Improved Solution
Solution
(a)
Search
Algorithm
Simple
Heuristic
Greedy
Heuristic
Search
Objective Value
Figure 2.15: Hybridization of general search algorithms with simple heuristics
PLS, GA-PLS or others. A simple improving heuristic takes a solution from the search
algorithm and tries to improve that solution (stochastically or deterministically). Thus, in
local search terminology for instance, it can be adopted as a new type of (in addition to
a standard random) move operator. In Figure 2.15b another hybrid algorithm is depicted.
Here, a greedy heuristic is used in order to interpret and assess a solution produced by
the stochastic search algorithm. In the case of network routing problems, an example
would be that the search algorithm optimizes the sequence in which the greedy heuristic
processes the demands. Thus, the applicability of this kind of hybridization is strongly
related to how a solution is represented inside the stochastic search algorithm and how
the information contained in a solution can be used by the greedy heuristic to construct
an actual solution. Such a hybridization, as reported in [Bec01] has several benefits: (i)
a greedy heuristic is typically simple and can always produce feasible solutions; (ii) the
solution space to be explored is usually (much) smaller compared to the original solution
space, where the stochastic search algorithm is performed without greedy heuristics; this
might increase the performance of the search algorithm. The latter is a also direct impact
of the problem transformation, as implicitly stated by using greedy heuristics. For ex-
ample, consider a network’s routing problem with 10 node-pairs, each has 10 candidate
paths. The solution space contains 1010
possible solutions. If we now use the greedy
heuristic as discussed in Subsection 2.3.2 and encode a solution as a specific sequence of
demands, in which they are processed by the greedy heuristic then the current solution
space now contains 10! possible solutions. Unfortunately, this mechanism sometimes will
introduce problems. As the search process is reduced to a certain area of the (original) so-
lution space, several good or optimal solutions might be excluded. However, as has been
shown in [Bec01], due to the largeness of the solution space in most planning problems
in communication networks, such a problem happens rarely.
24 Chapter 2: Network Planning and Optimization
Chapter 3
Overview of IP Routing
The Internet is a large network that connected about 160 million hosts (in June 2002)1
,
which are organized in about 13,000 distinct domains2
, called Autonomous Systems
(ASes) [QPS+
03]. With the decommissioning of the NSFNet3
Internet backbone net-
work in 1995, the Internet now functions with no single central network at all and en-
tirely consists of the various commercial Internet Service Providers (ISPs), private net-
works and Research and Education Networks (RENs), as connected at their peering points
[WIK05a]. Global connectivity is provided by so-called Tier-1 ISPs; these represent the
highest hierarchy level of the network and exchange traffic to each other on a revenue-
neutral basis (i.e. a Tier-1 ISP does not pay for transit on other Tier-1 ISP networks).
An AS has its own routers and routing policies, and connects (peers) to other ASes to
exchange traffic with remote hosts. A peering link could connect to a public Internet
Exchange Point (IXP), or directly to a private peer or transit/upstream provider. Inside
an AS, the network can be viewed as a directed graph, where nodes and arcs represent
routers and IP links, respectively. A typical ISP network architecture is depicted in Figure
3.1. Since an ISP usually offers services at several places, geographically the network
consists of several Point-of-Presences (PoPs) where a set of routers is maintained. From
a simplified perspective, a network consists of a combination of Core Routers (CRs) con-
nected to other PoPs, Border Routers (BRs) connected to other ASes, Hosting Routers
(HRs) connected to media servers, and Access Routers (ARs) connected directly to cus-
tomers [XTF+
02]. In an operational network, this split in functionality simplifies the
requirements for each router. For example: (i) an AR should provide high port density to
connect to a large number of customers with various access speeds and technologies; (ii) a
CR should provide high packet forwarding performance; etc. Furthermore, isolating peer
1
In January 2005 it increased to more than 310 million hosts [ISC05].
2
A domain corresponds roughly to one company or one Internet Service Provider.
3
NSFNet stands for National Science Foundation Network, which was the scientific research and edu-
cation network in the USA.
25
26 Chapter 3: Overview of IP Routing
Access Links
CR: Core Router
HR: Hosting Router
BR: Border Router
AR: Access Router
HR
HR
CR
CR
AR
AR
CR
CR
HR
BR CR
CR
AR
CR
CRBR
PoP
Peering Links
PoP: Point of Presence
Figure 3.1: A typical ISP architecture
traffic to a small set of BRs simplifies the management of inter-domain routing policies
[FGL+
00].
Currently, Internet routing is handled by two distinct protocols: Exterior Gateway Pro-
tocol (EGP) and Interior Gateway Protocol (IGP). On one hand, EGP is used for routing
between ASes, distributing reachability information and selecting the best route to each
destination that is compatible with the routing policies of the transit domains without
knowing their topology. The Border Gateway Protocol (BGP) is the current de facto
standard inter-domain routing protocol. On the other hand, IGP handles routing inside a
single domain, determines the best route to reach each internal subnetwork or host, based
on some metrics (e.g. delay, bandwidth). The most commonly used IGPs todays are Open
Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS).
To increase routing flexibility and provide QoS in IP networks, several new enhancements
have recently been proposed. There are two technologies which are of paramount impor-
tant and likely to be a common standard for IP networks in providing better services in
the near future. These are Multi-Protocol Label Switching (MPLS) and Differentitated
Services (DiffServ). MPLS provides a basic means to efficiently steer IP traffic, while
DiffServ gives the possibility to differentiate treatments for IP packets with respect to
their class of service. Both will be addressed later on in this chapter.
In this dissertation we only focus on intra-domain routing, including MPLS. Surely,
3.1: Classical IP Networks 27
MPLS can also be applied for inter-domain routing, but the use of such a mechanism
is still problematic. This is because each ISP is administratively independent, and inter-
domain coordination is in practice very difficult to realize.
The rest of this chapter is organized as follows. Section 3.1 describes routing in classical
IP networks. Here, the term "classic" is used to refer to IP networks that route traffic using
an IGP. In Section 3.2 MPLS is briefly reviewed. Finally, Section 3.3 reveals the DiffServ
architecture and the corresponding impacts on routing in the network.
3.1 Classical IP Networks
Communication in the Internet works in the following way. The transport layer protocol
TCP (Transport Control Protocol) takes data streams and breaks them up into packets
(datagrams). Each packet is transmitted through the networks, possibly being fragmented
into smaller units as it goes. When all the pieces finally get to the destination machine,
they are reassembled by the network layer into the original packet. This packet is then
handed over to the transport layer, which inserts it into the receiving process input stream.
If a packet is lost somewhere, the transport layer at both sides will initiate a retransmis-
sion. Thus, the network layer such as IP is only responsible to route packets from one end
to another without considering reliability of delivery [Tan03, PM04].
The first IGP used in the Internet was the Routing Information Protocol (RIP), which
is a distance vector protocol based on the Bellman-Ford algorithm inherited from the
ARPANET4
. Distance vector protocols maintain information on a per-node basis in terms
of a routing table, which contains a vector of distances to all known destinations. Neigh-
boring routers regularly exchange their routing tables, so that with this information each
router is able to compute and update its own distances and again report them to the neigh-
bors. In RIP, the distance (metric) is very simple: the number of hops (i.e. hop-count),
which is expressed as an integer varying between 1 and 15; the value 16 denotes infinity.
RIP worked well in small systems, but less well as ASes got larger. It also suffered from
the count-to-infinity5
problem and slow convergence.
These problems were the motivation in developing several protocols based on link-state
technology. The principle of link state routing is very simple. Instead of trying to com-
pute "best routes" (shortest paths) in a distributed fashion, all the nodes will maintain a
complete copy of the network map and perform a complete computation of the best routes
from this local map. Each record in database represents one link in the network and has
been advertised by a node that is responsible for it. It contains an interface identifier and
4
ARPANET is the progenitor of the Internet, was established in 1969 by the U.S. Defence Advanced
Research Agency (DARPA).
5
We refer to [Tan03, Hui95] for detail explanations.
28 Chapter 3: Overview of IP Routing
information describing the state of the link: the destination and the distance (also called
as link cost, metric or weight). With this information, by using Dijkstra’s algorithm, each
node can easily compute the shortest path from itself to all other nodes. As all nodes have
the same database, the routes are coherent and loops cannot occur [Hui95].
Today, the main IGP protocols are OSPF and IS-IS, which belong to link-state protocols.
IS-IS is actually very similar to OSPF, but it has been specified by the International Or-
ganization for Standardization (ISO). Compared to RIP, OSPF is in general much more
complex. OSPF supports a variety of distance metrics e.g. physical distance, delay or
cost. However, for path computation only one metric is used at a time. It also allows
hierarchical routing and is more stable (faster convergence). Therefore, it is used in larger
networks such as enterprise and ISP internal networks. For the rest of this dissertation,
we always use the term "IGP" mainly to refer to "OSPF". Otherwise it will be stated
explicitly. In the following paragraphs, we will review the routing mechanism facilitated
by IGP to provide a basis for our traffic engineering approach, which will be addressed in
next chapter. Our interest is mainly on data-plane operations6
.
An IP datagram consists of a header and a data part. The header has a 20-byte fixed part
and a variable length optional part. The header consists of several pre-defined fields. In
the context of routing, only the destination address field is of prominent interest, since
packets are routed based on their destinations. An extended feature to support routing
based on class of service as specified in the Type of Service (ToS) field is in practice
rarely used. It does not play any substantial role until the introduction of MPLS and
DiffServ (see Section 3.3).
The main advantage of shortest path routing is that it can be implemented in a distributed
way, in a form known as (connectionless) hop-by-hop destination based routing. Figure
3.2 gives an example of such a routing mechanism. Assume that we have a six-router
network which is configured as displayed in Figure 3.2a. Router 1 connects to network A,
whilst router 5 and router 6 to network B and network C, respectively. Each router main-
tains the complete network map and computes shortest paths to all destinations, which
in turn are used for constructing a routing table consisting of next hop and interface7
information. Figures 3.2b and 3.2c show an example of the shortest path tree and the
corresponding routing table seen from router 1. If a packet arrives at a certain router, it
will look at the destination address and forward the packet to the correct outgoing inter-
face as specified by its routing table. This illustrates in Figure 3.2d. Two packets with
destinations B4 (representing host number 4 inside network B) and C1 (representing host
number 1 inside network C) arrive at router 1, will be forwarded to router 3. Since router 3
also has a routing table derived from the same network map, it knows that the packet with
6
Routing has two types of operations: data-plane and control-plane operations. The data-plane opera-
tions are those that are performed on every packet whereas the control-plane sets up information to facilitate
data-plane operations (e.g. routing table).
7
A link may consist of several interfaces.
3.1: Classical IP Networks 29
Destination Next Hop Interface
B4
C1
B4
C1
B4
C1
6
5
3
C
2 A
1 2
43
5 6
1
1 2
4
5 6
network A
network B network C
5
53
2
1 2
2
A
B
C
direct
3
3
1−A
1−3
1−3
3
(a) (b)
(c)
(d)
4
B
C1
C1B4
Figure 3.2: Hop-by-hop destination-based IP routing
destination network B must be forwarded to router 5 and that with destination network C
to router 4. This process continues till those packets reach their destination hosts.
In OSPF networks, it is possible, to some extent, to do load balancing. Using the so-called
Equal-Cost Multi-Path (ECMP) rule, if there are multiple shortest paths to a particular
destination, the corresponding traffic is equally split over the outgoing links belonging
to these shortest paths. In practice, the split may not exactly follow ECMP; that is, the
split decision is not done on a packet-by-packet basis in a round robin manner among
the multiple outgoing links that coincide with the (multiple) shortest paths [PM04]. This
is because such a mechanism may introduce packet disordering problems, which can in
many cases lead to performance degradation that is not easy to overcome. Therefore the
following load balancing schemes are generally recommended:
• destination based load balancing i.e. in the case of multiple shortest paths, traffic
30 Chapter 3: Overview of IP Routing
Destination Next Hop Interface
C2
C3
C4 C2
C1
C3
C4
C4
C3
C3
C4
C1
C2
C1
C2
C1
C2
6
1 2
43
5 6
network A
network B network C
1
11
1
1 1
1
(a)
6
3
(d)
A direct 1−A
3 1−3
2 1−2
B 3 1−3
C
(c)
(b)
1
2 3
4 5
A
C
B
1 2
4
5
C3
C4
C1
Figure 3.3: Hop-by-hop routing with ECMP
to a certain host inside a certain network is routed on a single path and traffic to
different hosts in the same network could travel through different paths.
• per transport connection load balancing. In this scheme, even if multiple shortest
paths are available, packets that belong to a particular transport session are routed
on a specific shortest path. Packets for another session, which may have the same
pair of origin-destination routers, can take a different shortest path.
In contrast to packet-by-packet load balancing scheme, both per-destination and per-
transport connection schemes may result in inequal traffic splitting. This is very depen-
dent on many factors such as network sizes, types of applications, the algorithm chosen
by routers’ vendor etc. In this work we always assume ECMP to mean equal split in terms
of traffic volume.
Figure 3.3 depicts hop-by-hop routing with ECMP rule. Setting the weights as in Figure
3.3a results in several ties. For example, router 1 has a shortest path structure as in Figure
3.2: IP/MPLS Networks 31
3.3b and builds its routing table as in Figure 3.3c. Now, if several packets with destination
network C arrive at router 1, it will try to balance the load among the available interfaces
i.e. forward the packets to node 2 and 3. A similar situation also happens at router 3,
where two interfaces lead to shortest paths. Furthermore, Figure 3.3d also illustrates a
per-destination load balancing scheme as mentioned in this paragraph.
3.2 IP/MPLS Networks
Multi-Protocol Label Switching (MPLS) is a forwarding scheme. As it has been dis-
cussed in the previous section, in the traditional IP forwarding paradigm, an independent
forwarding decision is made at each hop as a packet travels from one router to the next.
The IP header is analyzed and the next hop is chosen based on this analysis and the infor-
mation in the routing table. In an MPLS environment, the analysis of the packet header
is performed just once, when a packet enters the MPLS domain. At these ingress points,
Label Switching Routers (LSRs) classify IP packets into Forwarding Equivalence Classes
(FECs) based on a variety of factors, including e.g. a combination of the information
carried in the IP header of the packets and the local routing information maintained by
the LSRs. A label, which can be read in the first 20-bit field of an MPLS header, is then
assigned to each packet according to its FEC. An MPLS header that is encapsulated be-
tween the link layer and the network layer header, also contains a 3-bit experimental field
(EXP − formerly known as Class-of-Service/CoS field), a 1-bit label stack indicator and
an 8-bit Time-To-Live (TTL) field.
Inside an MPLS domain, an LSR examines the label and possibly the experimental field
and uses this information to make packet-forwarding decisions. This label is used as a
look-up index to the label forwarding table. Each incoming packet will be processed
according to the corresponding label forwarding entry: the incoming label is replaced by
an outgoing label and the packet is switched to the next LSR. Before a packet leaves an
MPLS domain, its label is removed. The path between an ingress LSR and an egress LSR
is called a Label Switched Path (LSP).
Figure 3.4 shows an example of routing inside an MPLS domain. In Figure 3.4a the
arrows represent two LSPs. The first LSP is between LSR 1 (ingress) and LSR 5 (egress),
using label sequence 10 and 20. The second LSP originates from LSR 1 and terminates
at LSR 6, using label sequence 30, 40 and 50. Figure 3.4b gives the forwarding table
for LSR 1. In this example, the FECs are derived only from destination networks. Since
LSR 1 is the ingress point, the table basically specifies mapping from FECs to outgoing
labels. From LSR 3 point of view, the label forwarding table looks like Figure 3.4c.
It only maps incoming to outgoing labels, since LSR 3 is in the middle (core) of the
network. Now consider the case that two packets with destination C1 and B4 arrive at
ingress LSR 1. The packet headers will be analyzed before they are processed according
32 Chapter 3: Overview of IP Routing
Dest. Label
Inter−
faceLabel
Inter−
face
In Out
Label
Inter−
faceLabel
Inter−
face
In Out
1−A −
1−3
1−3
30
1 2
4
5
C
B
1 2
43
5 6
network A
network B network C
(a) (b)
(c)
10
20
30
40
50
6
3
(d)
3−5
3−4
30
10
20
1−3
1−3
20
40
40
50
10
B4
B4
B4
C1
C1
C1
C1
B4
C1
30
10
1−A −
Figure 3.4: Routing with MPLS
to the forwarding table: (i) label 10 is inserted to packet B4, which is then forwarded to
LSR 3; (ii) label 30 is imposed to packet C1, which is also forwarded to LSR 3. At LSR
3, these packets are switched: incoming packet with label 10 is forwarded to LSR 5 with
outgoing label 20, while that with label 30 is forwarded to LSR 4 with outgoing label
40. At the egress LSRs 5 and 6, the labels are removed and the packets are sent to the
destination hosts.
As inherently indicated in the previous example, An LSP is uni-directional from sender
to receiver. LSPs can be set up either manually or signaled using protocols for label
distribution. In the first case, one has to manually assign labels on all LSRs (ingress,
transit and egress). In the second case, a signaling protocol is used to set up the path and
dynamically assign labels. One just needs to configure the ingress routers, since transit
and egress routers accept signaling information from the ingress router and they set up
and maintain the LSP cooperatively. In both cases, the issue which intermediate LSRs
an LSP may traverse is a management concern to be settled during a planning or a path
3.3: Differentiated Services 33
computation phase. The ability to set up Explicit Routes (ERs) for the LSPs is one of the
most useful features of MPLS, since it provides a complete control over a routing path.
This has not been easy to implement in the classical IP routing technology. For the latter
case, it is also possible to set up LSPs automatically:
• by using (vanilla) Label Distribution Protocol (LDP). The LSPs established by the
LDP are identical to the routing paths yielded by hop-by-hop IP routing. LDP
basically maps network layer routing information from IGP directly to MPLS layer.
Two LSPs as depicted in Figure 3.4a could be generated by LDP for the weight
system as shown in Figure 3.2a.
• by using either Constraint-based Routing Label Distribution Protocol (CR-LDP)
or Resource reSerVation Protocol with Traffic Engineering extension (RSVP-TE).
These protocols perform Constraint-Based Routing (CBR)8
to automatically com-
pute the intermediate hops of an LSP. LSP setup can be control driven i.e. triggered
by control traffic such as routing updates. Or, it can be data driven i.e. triggered by
the request of a flow or an aggregation of flows [XN99].
3.3 Differentiated Services
There are two architectures for adding QoS capabilities to today’s IP networks: Integrated
Services (IntServ) and Differentiated Services (DiffServ/DS). IntServ maintains an end-
to-end QoS for an individual or a group of flows with the help of a signaling protocol
such as RSVP. The idea behind IntServ is that routers have to be able to reserve resources
in order to provide QoS for specific user packet streams or flows. This unfortunately
requires flow-specific9
state to be maintained in the routers, which in turn makes IntServ
lacking scalability, since the amount of state information increases proportionally with
the number of flows. DiffServ, on the other hand, works on the provisioned-QoS model
where network elements are set up to service multiple classes of traffic, with varying
requirements. Its basic idea is to keep packet forwarding simple by categorizing traffic
into (a small number of) different classes and thus removing flow-specific information
from the network core. Therefore, DiffServ is the preferred technology for large-scale IP
QoS deployments [FE02].
Traffic entering a DS-domain is classified, policed and possibly conditioned at the edges
of the network, and assigned to different Behaviour Aggregates (BAs). Each behaviour
8
CBR denotes a class of routing algorithms that base path selection decisions on a set of requirements
or constraints, in addition to destination.
9
Here, the definition of flow is more general than that as given in Chapter 2. For example, packets with
the same value of (src. address; src. port; dest. address; dest. port) might be considered as a flow.
34 Chapter 3: Overview of IP Routing
Label
Inter−
faceLabel
Inter−
face
In Out
Class
FEC
Dest.
Label
Inter−
faceLabel
Inter−
face
In Out
network A
30 60
40
C
C
60
70
(a)
4−6
4−6
80
network C
50
4−3
4−2
80
50
LSP 1
LSP 2
(b)
(c)
40
70
1
1−2
1−3
2
−
−
43
1−A
1−A 30
5 6
P
BE
Figure 3.5: Class-based routing in a DS-MPLS network
aggregate is identified by a single Differentiated Services Code Point (DSCP), which is lo-
cated at the first six bits in the DS-field10
of the IP header. Within the core of the network,
scheduling and queueing control mechanisms are applied to the traffic classes accord-
ing to the Per-Hop Behaviour (PHB) associated with the DSCP. By assigning traffic of
different classes to different DSCPs, the DiffServ network provides different forwarding
treatements and thus different levels of QoS. Currently, several PHBs are defined:
• The Expedited Forwarding (EF) PHB. The EF PHB is used to provide premium
services i.e. for traffic with low loss, low delay, low jitter, assured bandwidth re-
quirements, such as Voice over IP (VoIP), video or online trading software.
• The Assured Forwarding (AF) PHB. The AF PHB is used to support data traffic
with assured bandwidth requirements. It is further divided into four subclasses.
Within each subclass it is possible to specify 3 drop precedence values. This PHB
can be used to provide olympic services (i.e. three tiers of services: gold, silver and
bronze, with decreasing quality).
• The Default (DF) PHB. The DF PHB represents the default forwarding behaviour.
Packets, which are not identified as belonging to another class, belong to this ag-
gregate. This PHB is typically used for the classical best effort services.
DiffServ can be deployed together with MPLS. In this so-called DS-MPLS architecture,
packets marked with DSCP will enter the MPLS network and PHB is enforced by every
10
The DS-field replaces the original ToS byte in IPv4 (IP version 4) or the Traffic Class field in IPv6.
3.3: Differentiated Services 35
LSR along the path. As LSRs do not have any knowledge of the IP header, PHB has
to be achieved by looking at different information. Two general approaches are used to
mark MPLS traffic for QoS handling within an MPLS network [DR00, CIS]. In the first
method, the DS coloring information is mapped in the EXP field of the MPLS header.
LSPs that use this approach are called E-LSPs, where packets are buffered and sched-
uled in accordance with the EXP fields. Alternatively, the label associated with each
MPLS packet carries the portion of the DS marking that specifies how a packet should be
queued. The dropping precedence portion of the DS marking is carried in the EXP bits.
The ingress LSR examines the DSCP in the IP header and selects an LSP that has been
provisioned for that QoS level. LSPs using this approach are called L-LSPs where QoS
information is inferred from the MPLS label.
It is obvious that routing by means of E-LSPs can happen both at class or coarser granu-
larity, while that using L-LSPs can only occur at class granularity. Since in our context,
we consider class-based routing, it does not really matter which type of LSP is used. This
chapter will be closed with an example of a class-based routing mechanism inside a DS-
MPLS network as described in Figure 3.5, which is, to a great extent, self explanatory.
Consider that we have two classes of traffic to be routed from LSR 1 to LSR 6: premium
traffic (denoted by P) and best effort traffic (BE). This means that two LSPs (one for each
class) has to be established. These are, for example, configured as in Figure 3.5a. Assume
that LSP 1 is allocated for premium and LSP 2 for best effort traffic. At ingress LSR 1 the
label forwarding table has to be set appropriately i.e. class information has to be included
in the FECs. Such a label forwarding table is given in Figure 3.5b. Actually, this is the
only difference between DS and non DS-compliant MPLS networks, since in the core of
the network, packets are switched in the same manner (cf. Figure 3.4c and Figure 3.5c).
Note that for the case of E-LSPs, LSPs 1 and 2 could use the same label at link (4,6), as
labels do not correspond to DSCP. By contrast, in the case of L-LSPs, two LSPs for two
different traffic classes can not share labels, even if the paths are identical.
36 Chapter 3: Overview of IP Routing
Chapter 4
Traffic Engineering in Classical and
Transitional IP Networks
To cope with the rapid growth of the Internet and due to increasing requirements for ser-
vice quality, some efforts have been invested by Internet Service Providers (ISPs), to build
a more scalable network architecture and expand network infrastructure and capacity. An-
other important issue is traffic engineering, that could give ISPs some degree of control
of the traffic distributed over the network. In routing context, traffic engineering means
mapping traffic flows onto the existing physical network topology in the most effective
way to accomplish desired operational objectives. This issue is the main focus of this
chapter, which is organized as follows. First, in Section 4.1 we deal with traffic engi-
neering problem in classical IP networks. After that, in Section 4.2 we consider several
types of transitional IP networks and propose the corresponding traffic engineering solu-
tion. Further, Section 4.3 addresses the issue of partial demand increase and its impact on
resource occupancy. Finally, some general remarks and other traffic engineering related
activities are given in Section 4.4.
4.1 Metric-Based Traffic Engineering
The Internet was designed as a best effort network and was not designed to guarantee a
particular level of performance, certainly not end-to-end quality of service [Gou01]. In
this regard, traffic engineering can be viewed as a part of efforts to improve the capabil-
ity of IP networks to provide better services. In classical IP networks, there are several
approaches for deploying traffic engineering: by optimizing the parameters used for rout-
ing decisions, so that a better network performance will be obtained [FT00] [SKK00]
[Gou01] [MK02b] [KP00] [BAGLM00], or by using explicit routing in an overlay model
with ATM or Frame Relay technology [WWZ01]. Recent developments in MPLS open
37
38 Chapter 4: Traffic Engineering in Classical and Transitional IP Networks
new possibilities to address some of the limitations of IP systems concerning traffic en-
gineering. However, in this section we consider only the case, where traffic engineering
is performed by optimizing routing paramters. It is worth to investigate this possibility
because: (i) the information provided by the "classical" routing protocol might still be
used in the future (even in more advanced networks), since it provides a simple, scalable
and robust connectionless routing mechanism, (ii) it seems that a more sophisticated and
widely standardized routing scheme might not be soon becoming reality, and (iii) many
internet domains are still working with "classical" routing schemes.
Most routing protocols in classical IP networks (like OSPF or IS-IS) follow the same
principle: they use weights, also called link costs or metrics, to determine the shortest
paths to route the traffic. These weights are static (i.e. traffic independent), dimensionless
and defined as a set of values associated with the links on the network, which can be set
in a router’s database. Then, each router computes the shortest paths to all destination
using Dijkstra’s algorithm according to these metric values. In case of multiple shortest
paths, some vendors have implemented a load balancing mechanism like ECMP. Thus,
the traffic flow will be split roughlya
evenly over several shortest paths. Depending on
demands and network configuration, the above described mechanism may lead to the
situation where some parts of the network being over-utilized, which in turn degrades the
network performance due to congestion and packet losses, while some other parts being
under-utilized.
Given a network topology and predicted traffic demands, the problem of metric-based
traffic engineering in IP networks is to find a set of link-weights that optimizes network
performance i.e. that spreads the load on the network more uniformly. Finding an ex-
act solution for this problem is proven to be NP-complete [FT00][FT02]. For small or
at most medium-sized networks, depending on the associated link structure, methods to
find the exact solution such MILP are still applicable [SKK00] [KP00] [BAGLM00]. But
the NP-completeness of the problem implies that as the network grows the resulting inte-
ger program is too complex to be solved in reasonable computation time. In such cases
heuristics have to be deployed. A heuristic is more flexible in terms of optimization crite-
ria (constraints) and might suffer less from the scalability problem. Recent work such as
reported in [MKSB02] tries to utilize MILP on large networks by using a decomposition
method and optimize the parts of the network independently. Such an approach can be
seen as a form of heuristic as well. There is also some work using meta-heuristic frame-
work like local-search [FT00][FT02] or simulated-allocation [GPS+
00]. To the best of
our knowledge, at the time we started the research, there were only a few publications i.e.
[ERP02][KP00] that applied evolutionary computation frameworks to the problem. The
earlier versions of the work presented in this section have been published in [MK02a],
[MK02b] and [MK05a].
a
In practice, it is difficult to achieve exact even splitting due to the reasons mentioned in Section 3.1.
However, for computation purpose we always assume that in case of ties a flow is evenly split.
4.1: Metric-Based Traffic Engineering 39
(b)(a)
6
11
1
1
1
1
2
21
2
3
5
5
121
3 4
5 6
2
3 4
5 6
1
2
4
6
5
3
1
2 3
4 5
1
Figure 4.1: Shortest path structures seen from node 1 for the case of unique and non-
unique shortest path metrics
Contributions
Our contributions are mainly in the following aspects :
• We introduce a novel Hybrid Genetic Algorithm (HGA), which combines a popula-
tion-based search capability in GA with a simple individual-based search heuristic,
that simulates network administrators behavior when they try to overcome conges-
tion problems in certain links.
• We propose a plain but flexible optimization objective, that considers both maxi-
mum link utilization and weight reconfiguration simultaneously.
• We consider both multiple and unique shortest path routing schemes.
The remainder of this section is organized as follows. In the next subsection we first
present a mathematical model of the problem and define the lower bound of the solution
obtained from a so-called general routing problem [FT00][FT02]. In Subsection 4.1.2
we propose an objective function that takes the weights’ changes to be performed for an
existing operational network into consideration. After that, in Section 4.1.3 we explain
the proposed hybrid genetic algorithm to solve the problem. Finally, some computational
results will be presented in Section 4.1.4.
4.1.1 Problem Formulation
As previously mentioned, demands in IP networks are routed along paths, which are se-
lected using Dijkstra’s shortest path algorithm with respect to link weights. In the case of
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks

More Related Content

What's hot

A survey report on mapping of networks
A survey report on mapping of networksA survey report on mapping of networks
A survey report on mapping of networks
IRJET Journal
 
SDC: A Distributed Clustering Protocol
SDC: A Distributed Clustering ProtocolSDC: A Distributed Clustering Protocol
SDC: A Distributed Clustering Protocol
CSCJournals
 
Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...
Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...
Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...
divya_prabha
 
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
SBGC
 
Cenet-- capability enabled networking: towards least-privileged networking
Cenet-- capability enabled networking: towards least-privileged networkingCenet-- capability enabled networking: towards least-privileged networking
Cenet-- capability enabled networking: towards least-privileged networking
Jithu Joseph
 
Rahul Gupta, 601303023, Thesis Report
Rahul Gupta, 601303023, Thesis ReportRahul Gupta, 601303023, Thesis Report
Rahul Gupta, 601303023, Thesis ReportRahul Gupta
 
Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...
Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...
Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...
SBGC
 

What's hot (9)

A survey report on mapping of networks
A survey report on mapping of networksA survey report on mapping of networks
A survey report on mapping of networks
 
SDC: A Distributed Clustering Protocol
SDC: A Distributed Clustering ProtocolSDC: A Distributed Clustering Protocol
SDC: A Distributed Clustering Protocol
 
project(copy1)
project(copy1)project(copy1)
project(copy1)
 
Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...
Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...
Project report on An Energy Efficient Routing Protocol in Wireless Sensor Net...
 
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
 
Cenet-- capability enabled networking: towards least-privileged networking
Cenet-- capability enabled networking: towards least-privileged networkingCenet-- capability enabled networking: towards least-privileged networking
Cenet-- capability enabled networking: towards least-privileged networking
 
2008 cse copy
2008 cse   copy2008 cse   copy
2008 cse copy
 
Rahul Gupta, 601303023, Thesis Report
Rahul Gupta, 601303023, Thesis ReportRahul Gupta, 601303023, Thesis Report
Rahul Gupta, 601303023, Thesis Report
 
Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...
Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...
Ieee projects 2011 ns 2 SBGC ( Trichy, Madurai, Chennai, Dindigul, Natham, Pu...
 

Viewers also liked

IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...
IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...
IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...
EM Legacy
 
An Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP Constraints
An Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP ConstraintsAn Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP Constraints
An Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP Constraints
EM Legacy
 
OPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMES
OPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMESOPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMES
OPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMES
EM Legacy
 
Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...
Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...
Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...
EM Legacy
 
Dimensioning of Multi-Class Over-Provisioned IP Networks
Dimensioning of Multi-Class Over-Provisioned IP NetworksDimensioning of Multi-Class Over-Provisioned IP Networks
Dimensioning of Multi-Class Over-Provisioned IP Networks
EM Legacy
 
An Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF WeightsAn Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF Weights
EM Legacy
 
Internet Traffic Engineering for Partially Uncertain Demands
Internet Traffic Engineering for Partially Uncertain DemandsInternet Traffic Engineering for Partially Uncertain Demands
Internet Traffic Engineering for Partially Uncertain Demands
EM Legacy
 
A HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEM
A HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEMA HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEM
A HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEM
EM Legacy
 
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic ConstraintsOptimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
EM Legacy
 
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic ConstraintsOptimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
EM Legacy
 
An Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF WeightsAn Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF Weights
EM Legacy
 
Optimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes
Optimization of IP Networks in Various Hybrid IGP/MPLS Routing SchemesOptimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes
Optimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes
EM Legacy
 
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP NetworksEfficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
EM Legacy
 
Network Planning and Optimization
Network Planning and OptimizationNetwork Planning and Optimization
Network Planning and Optimization
EM Legacy
 

Viewers also liked (14)

IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...
IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...
IMPACT OF PARTIAL DEMAND INCREASE ON THE PERFORMANCE OF IP NETWORKS AND RE-OP...
 
An Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP Constraints
An Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP ConstraintsAn Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP Constraints
An Offline Hybrid IGP/MPLS Traffic Engineering Approach under LSP Constraints
 
OPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMES
OPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMESOPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMES
OPTIMIZATION OF IP NETWORKS IN VARIOUS HYBRID IGP/MPLS ROUTING SCHEMES
 
Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...
Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...
Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Co...
 
Dimensioning of Multi-Class Over-Provisioned IP Networks
Dimensioning of Multi-Class Over-Provisioned IP NetworksDimensioning of Multi-Class Over-Provisioned IP Networks
Dimensioning of Multi-Class Over-Provisioned IP Networks
 
An Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF WeightsAn Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF Weights
 
Internet Traffic Engineering for Partially Uncertain Demands
Internet Traffic Engineering for Partially Uncertain DemandsInternet Traffic Engineering for Partially Uncertain Demands
Internet Traffic Engineering for Partially Uncertain Demands
 
A HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEM
A HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEMA HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEM
A HYBRID GENETIC ALGORITHM APPROACH FOR OSPF WEIGHT SETTING PROBLEM
 
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic ConstraintsOptimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
 
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic ConstraintsOptimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
Optimizing IP Networks for Uncertain Demands Using Outbound Traffic Constraints
 
An Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF WeightsAn Alternative Genetic Algorithm to Optimize OSPF Weights
An Alternative Genetic Algorithm to Optimize OSPF Weights
 
Optimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes
Optimization of IP Networks in Various Hybrid IGP/MPLS Routing SchemesOptimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes
Optimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes
 
Efficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP NetworksEfficient Planning and Offline Routing Approaches for IP Networks
Efficient Planning and Offline Routing Approaches for IP Networks
 
Network Planning and Optimization
Network Planning and OptimizationNetwork Planning and Optimization
Network Planning and Optimization
 

Similar to Efficient Planning and Offline Routing Approaches for IP Networks

My PhD Thesis
My PhD Thesis My PhD Thesis
My PhD Thesis
Suman Srinivasan
 
12.06.2014
12.06.201412.06.2014
Machine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdf
Machine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdfMachine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdf
Machine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdf
YAAKOVSOLOMON1
 
Distributed Traffic management framework
Distributed Traffic management frameworkDistributed Traffic management framework
Distributed Traffic management framework
Saurabh Nambiar
 
aniketpingley_dissertation_aug11
aniketpingley_dissertation_aug11aniketpingley_dissertation_aug11
aniketpingley_dissertation_aug11Aniket Pingley
 
ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...
ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...
ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...
Dejan Ilic
 
Dissertation_of_Pieter_van_Zyl_2_March_2010
Dissertation_of_Pieter_van_Zyl_2_March_2010Dissertation_of_Pieter_van_Zyl_2_March_2010
Dissertation_of_Pieter_van_Zyl_2_March_2010Pieter Van Zyl
 
SzaboGeza_disszertacio
SzaboGeza_disszertacioSzaboGeza_disszertacio
SzaboGeza_disszertacioGéza Szabó
 
Nweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italyNweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italy
AimonJamali
 

Similar to Efficient Planning and Offline Routing Approaches for IP Networks (20)

My PhD Thesis
My PhD Thesis My PhD Thesis
My PhD Thesis
 
12.06.2014
12.06.201412.06.2014
12.06.2014
 
Machine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdf
Machine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdfMachine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdf
Machine-Type-Communication in 5G Cellular System-Li_Yue_PhD_2018.pdf
 
T401
T401T401
T401
 
etd7288_MHamidirad
etd7288_MHamidiradetd7288_MHamidirad
etd7288_MHamidirad
 
Distributed Traffic management framework
Distributed Traffic management frameworkDistributed Traffic management framework
Distributed Traffic management framework
 
978-3-659-82929-1
978-3-659-82929-1978-3-659-82929-1
978-3-659-82929-1
 
Rzepnicki_thesis
Rzepnicki_thesisRzepnicki_thesis
Rzepnicki_thesis
 
thesis
thesisthesis
thesis
 
thesis
thesisthesis
thesis
 
Fulltext02
Fulltext02Fulltext02
Fulltext02
 
main
mainmain
main
 
aniketpingley_dissertation_aug11
aniketpingley_dissertation_aug11aniketpingley_dissertation_aug11
aniketpingley_dissertation_aug11
 
ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...
ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...
ILIC Dejan - MSc: Secure Business Computation by using Garbled Circuits in a ...
 
Dissertation_of_Pieter_van_Zyl_2_March_2010
Dissertation_of_Pieter_van_Zyl_2_March_2010Dissertation_of_Pieter_van_Zyl_2_March_2010
Dissertation_of_Pieter_van_Zyl_2_March_2010
 
KHAN_FAHAD_FL14
KHAN_FAHAD_FL14KHAN_FAHAD_FL14
KHAN_FAHAD_FL14
 
Report
ReportReport
Report
 
3 g m gw
3 g m gw3 g m gw
3 g m gw
 
SzaboGeza_disszertacio
SzaboGeza_disszertacioSzaboGeza_disszertacio
SzaboGeza_disszertacio
 
Nweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italyNweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italy
 

Recently uploaded

Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 

Recently uploaded (20)

Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 

Efficient Planning and Offline Routing Approaches for IP Networks

  • 1. Efficient Planning and Offline Routing Approaches for IP Networks Vom Promotionsausschuss der Technischen Universität Hamburg-Harburg zur Erlangung des akademischen Grades Doktor-Ingenieur genehmigte Dissertation von Eueung Mulyana aus Bandung Indonesia 2006
  • 2. ii 1. Gutachter (referee): Prof. Dr. Ulrich Killat 2. Gutachter (referee): Prof. Dr. Friedrich H. Vogt Tag der mündlichen Prüfung (date of oral examination): 28.02.2006
  • 3. Acknowledgement The work presented in this thesis was done during my activity at the Communication Networks’ Department of the Hamburg University of Technology (TUHH). I would like to thank my supervisor Prof. Dr. Ulrich Killat for giving me the chance to work in his department on this interesting topic and for giving me free hand with the research. Prof. Killat is the person who first got me interested in the problems addressed in this thesis. Many of his suggestions and criticisms have been of invaluable inspiration in the progress of this work. To all colleagues of the department Communication Networks I am very grateful for their cooperation, support and for many interesting discussions. Last, but not least, I would like to thank my family: my parents, my wife Ayi, my brothers and sister and my children. Without their love and support, this thesis would not have been written. iii
  • 4. iv Und auf der Erde sind dicht beieinander Landstriche und Gärten von Weinstöcken, Kornfelder und Dattelpalmen, die auf Doppel- und auf Einzelstämmen aus einer Wurzel wachsen; sie werden mit dem selben Wasser getränkt, dennoch lassen Wir die einen von ihnen die anderen an Frucht übertreffen. Hierin liegen wahrlich Zeichen für ein verständiges Volk (13:4). Und Er hat das für euch dienstbar gemacht, was in den Himmeln und was auf Erden ist; alles ist von Ihm. Hierin liegen wahrlich Zeichen für Leute, die nachdenken (45:13). Untuk orang-orang tercinta: mamah, ayi, ageung, teteng, wawah dan teteh shafiyya dan ibrahim
  • 5. Abstract Historically, planning and optimization of communication networks have always been a central topic in many research efforts. This also holds for the Internet, which emerges as the most suitable platform for the current and the future multi-service networks and which shall be able to handle very complex tasks with regard to service quality, guarantee and reliability. For this reason, researchers are working in two directions: with or without fundamental changes in the classical Internet Protocol (IP) networks. Therefore, different approaches for next generation IP networks are proposed. This dissertation primarily addresses routing issues in diverse IP networks. Routing is one of the fundamental aspects in communication networks, assuring that the information to be exchanged between communicating instances always reaches the correct destination. It has also a direct impact on service quality and delivery. Proper control on routing can help network operators to balance traffic load, to preventively avoid congestion and, in general, to efficiently provision resources in the networks, meeting some performance requirements while minimizing network’s cost. The scientific contributions of this dissertation are in the following aspects: we present several efficient algorithm frameworks for dealing with Traffic Engineering (TE) prob- lems in diverse IP networks, including the classical and MPLS (Multi-Protocol Label Switching) enabled IP networks with and without service differentiation. In some cases, specific issues related to over-provisioning and protection are also addressed. Further- more, since the nature of IP traffic is very dynamic, we pursue investigation of the im- pacts of demand changes on routing efficiency. Finally, to incorporate traffic variations explicitly, several simple traffic uncertainty models are introduced and the corresponding traffic engineering approach under such uncertain traffic conditions is proposed. v
  • 6. vi
  • 7. Kurzfassung Kommunikationsnetzplanung und Optimierung sind immer ein zentrales Thema bei vie- len Forschungsaktivitäten. Dies trifft auch auf das Internet zu, das sich den letzten Jahren als die anerkannte Plattform für derzeitige und zukünftige Mehrdienstnetze entwickelt hat und als ein Mehrdienstnetz in der Lage sein soll, mit komplexen Aufgaben bezüglich der Dienstqualität, Garantie und Zuverlässigkeit umzugehen. Über die Frage, ob hierfür grundsätzliche Änderungen in IP (Internet Protocol) Netzen notwendig wären, sind die Forscher bisher nicht einig. Daher gibt es unterschiedliche Vorstellungen, wie die nächste Generation von IP Netzen aussehen soll. Diese Dissertation behandelt das Routing in unterschiedlichen IP Netzen. Routing ist eine der Grundfunktionen von Kommunikationsnetzen und gewährleistet das sichere und Ressourcen-schonende Erreichen des Kommunikationspartners. Ferner hat Routing einen direkten Einfluss auf die erreichbare Dienstgüte. Optimierte Routingsverfahren kön- nen unter anderem dazu beitragen, die Netzlast gleichmäßig zu verteilen, Verkehrsstau präventiv zu vermeiden und im allgemeinen, die Netzressourcen effizient zu verwalten. Dies sollte einher gehen mit der Etablierung aller gewünschter Verkehrsbeziehungen und einer Minimierung der entstehenden Netzkosten. Die wissenschaftliche Beiträge dieser Dissertation liegen in den folgenden Aspekten. Wir präsentieren effiziente Algorithmen um das sogenannte Traffic Engineering (TE) Problem in unterschiedlichen IP Netzen zu behandeln. Dies beinhaltet sowohl klassische als auch MPLS-fähige (Multi-Protocol Label Switching) Netze mit und ohne Dienstunterschei- dung. In einigen Fällen werden spezielle Themen wie Überdimensionierung und Aus- fallsicherheit ebenfalls behandelt. Da der IP Verkehr naturgemäß äußerst dynamisch ist, werden auch die Auswirkungen von Verkehrsänderungen auf die Ressourcennutzung un- tersucht. Letztlich, um Verkehrschwankungen explizit zu berücksichtigen, werden auch Modelle für unsichere Verkehrsvoraussagen eingeführt und ensprechende Traffic Engi- neering Verfahren unter solchen Verkehrsbedingungen untersucht. vii
  • 9. Contents Abstract v Kurzfassung vii List of Publications xiii 1 Introduction 1 1.1 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.1 Traffic Engineering . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.2 Multi-Class IP/MPLS Networks . . . . . . . . . . . . . . . . . . 3 1.1.3 Demand Uncertainty . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Network Planning and Optimization 5 2.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Network Planning and Management . . . . . . . . . . . . . . . . . . . . 7 2.3 Optimization Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3.1 Linear Programming . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.2 Greedy Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.3 Plain Local Search . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.4 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . 17 2.3.5 Genetic Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.6 Hybridization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3 Overview of IP Routing 25 3.1 Classical IP Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.2 IP/MPLS Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.3 Differentiated Services . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4 Traffic Engineering in Classical and Transitional IP Networks 37 4.1 Metric-Based Traffic Engineering . . . . . . . . . . . . . . . . . . . . . 37 4.1.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . 39 4.1.2 Minimizing Weight Changes . . . . . . . . . . . . . . . . . . . . 43 ix
  • 10. x Contents 4.1.3 A Hybrid Genetic Algorithm Approach . . . . . . . . . . . . . . 44 4.1.4 Computational Results . . . . . . . . . . . . . . . . . . . . . . . 46 4.2 Traffic Engineering in Hybrid IGP/MPLS Environments . . . . . . . . . 49 4.2.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2.2 Solving with a Genetic Algorithm . . . . . . . . . . . . . . . . . 53 4.2.3 Results and Discussion . . . . . . . . . . . . . . . . . . . . . . . 55 4.3 Partial Demand Increase . . . . . . . . . . . . . . . . . . . . . . . . . . 58 4.3.1 Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 4.3.2 Policy and Reoptimization . . . . . . . . . . . . . . . . . . . . . 59 4.3.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.4 Some Aspects Looking for a Chapter . . . . . . . . . . . . . . . . . . . . 64 4.4.1 Better Lower-Bounds . . . . . . . . . . . . . . . . . . . . . . . . 65 4.4.2 Network Failures . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.4.3 Network Dimensioning . . . . . . . . . . . . . . . . . . . . . . . 68 5 Routing and Dimensioning of Multi-Class IP/MPLS Networks 71 5.1 Joint LSP Design and Weight Setting . . . . . . . . . . . . . . . . . . . . 71 5.1.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . 73 5.1.2 A Solving Strategy . . . . . . . . . . . . . . . . . . . . . . . . . 76 5.1.3 Results and Analysis . . . . . . . . . . . . . . . . . . . . . . . . 77 5.2 Network Dimensioning . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 5.2.1 Mathematical Formulation . . . . . . . . . . . . . . . . . . . . . 81 5.2.2 A Heuristic Approach . . . . . . . . . . . . . . . . . . . . . . . 85 5.2.3 Computational Results . . . . . . . . . . . . . . . . . . . . . . . 88 5.3 Network Dimensioning with Protection . . . . . . . . . . . . . . . . . . 91 5.3.1 Mathematical Models . . . . . . . . . . . . . . . . . . . . . . . . 92 5.3.2 Solving with Heuristics . . . . . . . . . . . . . . . . . . . . . . . 95 5.3.3 Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.4 LSP Design for Multi-Class IP/MPLS Networks . . . . . . . . . . . . . . 97 6 Routing Optimization under Demand Uncertainty 101 6.1 Asymmetrical Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 6.1.1 Outbound Demand Models . . . . . . . . . . . . . . . . . . . . . 103 6.1.2 Traffic Engineering under Outbound Traffic Constraints . . . . . 104 6.1.3 Inbound Demand Models . . . . . . . . . . . . . . . . . . . . . . 107 6.1.4 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 6.2 Symmetrical Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 6.3 Partially Uncertain Demands . . . . . . . . . . . . . . . . . . . . . . . . 114 6.3.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . 115 6.3.2 Results and Analysis . . . . . . . . . . . . . . . . . . . . . . . . 117 7 Summary and Outlook 121
  • 11. Contents xi A Hints for LSP Design under Demand Uncertainty 123 B Acronyms 125 List of Figures 127 List of Tables 131 Bibliography 133 Curriculum Vitae 141
  • 13. List of Publications 1. Eueung Mulyana, Shu Zhang, and Ulrich Killat. Internet Traffic Engineering for Partially Uncertain Demands. In Proceedings of 19th International Teletraffic Cong- ress ITC 19, pages 809 - 818, Beijing China, August/September 2005. 2. Eueung Mulyana, Henning Stahlke, and Ulrich Killat. Dimensioning of Multi- Class Over-Provisioned IP Networks. In Proceedings of 19th International Teletraf- fic Congress ITC 19, pages 2137-2146, Beijing China, August / September 2005. 3. Eueung Mulyana and Ulrich Killat. Routing Optimization in IP/MPLS Networks under Per-Class Over-Provisioning Constraints. In Proceedings of the 2nd Inter- national Network Optimization Conference INOC 2005, pages 551-556, Lisbon Portugal, March 2005. 4. Eueung Mulyana and Ulrich Killat. Optimizing IP Networks for Uncertain De- mands Using Outbound Traffic Constraints. In Proceedings of the 2nd International Network Optimization Conference INOC 2005, pages 695-671, Lisbon Portugal, March 2005. 5. Eueung Mulyana and Ulrich Killat. Load Balancing in IP Networks by Optimis- ing LinkWeights. European Transactions on Telecommunications, 16(3):253-261, May/June 2005. 6. Eueung Mulyana and Ulrich Killat. Optimizing IP Networks in a Hybrid IGP/MPLS Environment. Annals of Telecommunications, Special Issue on Traffic Engineering and Routing, 59(11):1373-1388, November/December 2004. 7. Eueung Mulyana and Ulrich Killat. Optimization of IP Networks in Various Hybrid IGP/MPLS Routing Schemes. In Proceedings of the 3rd Polish-German Teletraffic Symposium PGTS 2004, pages 295-304, Dresden Germany, September 2004. 8. Eueung Mulyana and Ulrich Killat. Impact of Partial Demand Increase on the Per- formance of IP Networks and Re-optimization Approaches. In Proceedings of the 3rd Polish-German Teletraffic Symposium PGTS 2004, pages 275-284, Dresden Germany, September 2004. xiii
  • 14. xiv Contents 9. Eueung Mulyana and Ulrich Killat. An Offline Hybrid IGP/MPLS Traffic Engi- neering Approach under LSP constraints. In Proceedings of the 1st International Network Optimization Conference INOC 2003, pages 416-421, Evry/Paris France, October 2003. 10. Eueung Mulyana and Ulrich Killat. An Alternative Genetic Algorithm to Optimize OSPF Weights. In Proceedings of 15-th ITC Specialist Seminar on Internet Traffic Engineering and Traffic Management, pages 186-192, Wuerzburg Germany, July 2002. 11. Eueung Mulyana and Ulrich Killat. A Hybrid Genetic Algorithm Approach for OSPF Weight Setting Problem. In Proceedings of the 2nd Polish-German Teletraf- fic Symposium PGTS 2002, pages 39-46, Gdansk Poland, September 2002.
  • 15. Chapter 1 Introduction In recent years, the Internet has evolved to the most dominant communication network carrying diverse applications including those, which are traditionally served by dedicated networks, such as voice and video services. Such different applications certainly require different levels of Quality of Service(QoS), on which the early IP networks1 unfortunately were not focused. The Internet was not designed to guarantee a particular degree of performance but it was created with best effort service in mind where connectivity was the most important issue [QPS+ 03]. For these reasons, the Internet has continuously been a topic of research and has been enhanced accordingly. Today, to a certain extent, the Internet has proven its important role in providing efficient data-centric and multi-service applications, so that it is be- lieved to be the underlying platform for future communication networks, the Next Gen- eration Networks(NGNs) [ALM+ 01]. Generally, when dealing with performance issues, the corresponding research is termed Traffic Engineering (TE), which is basically com- posed of two aspects: (i) performance evaluation, which encompasses the application of technology and scientific principles to the measurement, characterization and modeling of (Internet) traffic; and (ii) performance enhancement and optimization, which covers the issues of controlling traffic according to performance requirements, while utilizing network resources economically and reliably [ACWX02]. The optimization aspects can be achieved though capacity management and traffic man- agement. The first includes routing control and network resource dimensioning (e.g. bandwidth, buffer and computational resources). The last includes: nodal traffic control functions such as admission control, traffic conditioning, queue management, scheduling; and other functions that regulate traffic flow through the network or that arbitrate ac- cess to network resources between different packets or between different traffic streams. Furthermore, these optimization aspects can also be viewed from a control perspective: 1 IP stands for Internet Protocol, the network layer protocol on which the Internet is based 1
  • 16. 2 Chapter 1: Introduction preventive (offline) vs. reactive (online). In the first case, the traffic engineering control system takes preventive action to obviate predicted unfavorable future network states. In the second case, the control system responds correctively and adaptively to events that have already transpired in the network [ACWX02]. This dissertation addresses planning and management issues in IP networks. Specific focus is put on routing, which is one of the most significant functions that have to be performed by the Internet to fulfill its basic task: proper information exchange between communicating nodes. Thus, here the term "Traffic Engineering" is always referred to as "routing control". As such a control function can operate at different levels of temporal resolution, ranging from short (e.g. miliseconds) to intermediate (e.g. days or weeks) level, we limit the scope of this dissertation to the latter case i.e. to medium-term, or even to long-term2 , control activities, where the corresponding computation is performed offline. The challenge of research in this area is to control and to steer traffic through the network in the most effective way while satisfying some requirements (e.g. performance, minimization of cost). 1.1 Contributions Today’s IP networks are diverse, in the sense that many network operators apply differ- ent instruments in order to meet QoS and other requirements in their networks. Thus, traffic engineering is sometimes unique for each type of network. This dissertation is mainly concerned with offline routing control in diverse IP networks. The notion "diverse IP networks" refers to networks with different routing technologies such as the classical Interior Gateway Protocols (IGPs)3 , Multi-Protocol Label Switching (MPLS) or hybrid IGP/MPLS4 . Our contributions are primarily in the aspects outlined in the following Sub- sections 1.1.1 through 1.1.3. 1.1.1 Traffic Engineering At first, we propose a novel hybrid Genetic Algorithm (GA) to deal with the trafic engi- neering problem in the classical IP networks. The algorithm combines a population-based search capability in GA with a simple individual-based search heuristic, that simulates the behavior of network’s administrators when they try to reroute traffic on/to a certain link. The work in this area has been published in [MK02a], [MK02b] and [MK05a]. Afterwards, a traffic engineering approach for several transitional IP networks is pre- 2 We will discuss different time-scales for network planning and management in Chapter 2. 3 In this dissertation, the terms "classical IP networks" and "IGP networks" are used synonymously. 4 Hybrid IGP/MPLS networks will also be called as transitional IP networks.
  • 17. 1.2: Outline 3 sented. The basic idea was to establish a few explicit routing paths by making use of MPLS, instead of changing link-metric values as in pure IGP networks. Some results for and the comparison between various hybrid IGP/MPLS schemes are also given. This work has been reported in [MK03], [MK04b] and [MK04c]. At last, we investigate the impact of partial (non-linear) demand increase and develop a methodology to decide when and how reoptimization should be performed. Two methods for reoptimization based on local search frameworks are suggested. The work is published in [MK04a]. 1.1.2 Multi-Class IP/MPLS Networks Routing in multi-class IP/MPLS networks is much more flexible than in a pure IGP net- work: (i) routing can be implemented on a per service-class basis; and (ii) both shortest path and source routing are possible to be deployed. In this regard, we propose an offline traffic engineering approach for the problem of per-class unsplittable routing in IP/MPLS networks to specifically address per-class over-provisioning requirements. Such per-class over-provisioning is a simple, practical and less expensive means for providing QoS. Fur- thermore, we also consider the problem of dimensioning of such a network under sev- eral different routing schemes. Novel mathematical formulations and the some heuristic frameworks for solving these problems are also given. This work is reported in parts in [MK05c] and [MSK05]. 1.1.3 Demand Uncertainty To obtain accurate demand information between node-pairs in a network is becoming more and more difficult, particularly as the network size grows. In such a situation, tak- ing traffic variations explicitly into account when making routing decisions, may provide a better performance predictability. In this regard, we propose: (i) several simple traffic uncertainty models based on information of outgoing/incoming traffic from/to each node in a network; (ii) a flexible traffic model, addressing a situation where demands are com- posed of both fixed and uncertain parts. The corresponding approach for routing control under such demand conditions is also presented. This work has been published in parts in [MK05b] and [MZK05]. 1.2 Outline This dissertation is structured as follows.
  • 18. 4 Chapter 1: Introduction Chapter 2 describes some fundamental notions for network planning and reviews the op- timization approaches, focusing on those, which are intensively used for solving the prob- lems in the subsequent chapters. It first addresses the basic terminology of networks and network planning. Then, it discusses several optimization approaches, covering linear programming and some heuristic frameworks. In Chapter 3, we present a compact overview of routing in IP networks. This embraces the classical hop-by-hop destination based shortest path routing, routing via label switching in MPLS enabled IP networks, and also the more flexible class-based routing in IP networks applying MPLS and service differentiation. Chapter 4 reveals our novel approach for solving the problem of traffic engineering in clas- sical and transitional IP Networks. The latter is referred to as combined routing scheme in classical IP networks, where some nodes are MPLS enabled. Furthermore, this chapter also discusses the impact of partial demand increase on network utilization and presents a simple policy and two reoptimization approaches to deal with the issue. Chapter 5 deals with the problem of offline routing control and with the joint problem of routing and dimensioning for multi-class IP/MPLS networks. In all problems, we partic- ularly emphasize over-provisioning constraints, since they are of paramount importance for providing a good quality of service in the network. Moreover, the resilience aspect is also considered, by simultaneously planning backup paths for routing under network failures. Chapter 6 is devoted to routing optimization under demand uncertainty. At first, the cor- responding demand models are introduced, the impact on link occupancy is explained and the corresponding link load calculation is derived. At last, we also introduce the con- cept of partially uncertain demands to address a situation where traffic is composed of both fixed and uncertain parts, providing flexibility to deal with common practical cases, where only a subset of the necessary information can precisely be determined. Chapter 7 gives a summary of this dissertation and points out some directions for futher research.
  • 19. Chapter 2 Network Planning and Optimization This chapter is devoted to the introduction of some basic issues related to network plan- ning and optimization. We first review some fundamental notions which are intensively used throughout this dissertation. Afterwards, a general network planning and manage- ment framework is presented, providing a clear view to the role of the specific problems addressed in the following chapters. In the last section, we discuss several optimization approaches and especially focus on those being used for solving the problems presented in this thesis. 2.1 Terminology A communication network consists of equipment interconnected by transmission media, allowing communication entities (users) to exchange information, which may be voice, graphics, video or data. A public communication network connects a large collection of users, that are typically distributed over different geographical locations. The telephone network is probably the most historical example of a such public network, that exists since several decades. In recent years, the global computer network (i.e. the Internet) plays an increasing role and has become a standard platform for the current and future multi-media communication. From a functional point of view, networks can be subdi- vided into access and backbone(core) networks. Access networks are connected directly to customers, while a backbone network joins all access networks together. As our fo- cus is on backbone networks only, in this dissertation the term "network" always means "backbone network". A communication network is an object with a certain structure (often called network topology) and with a set of attributes. The topology can be viewed as a graph which consists of nodes connected by links. The attributes describe the network’s status and its 5
  • 20. 6 Chapter 2: Network Planning and Optimization PSTNIP ATM Fibers/Cables/Ducts IP Optical Layer (e.g. WDM) Transport Layer (e.g.SDH) Figure 2.1: An example of multi-layer network architecture specific configuration e.g. link capacities or routing parameters. A communication net- work carries communication traffic from ingress (source) to egress (destination) nodes. This traffic can be thought of as an aggregation of individual customers’ traffic, which is connected to a common pair of ingress and egress nodes. Since for cost and efficiency reasons, a network does not always provide a point-to-point physical connection between node pairs, the network resources have to be shared for all traffic in the network. These resources may be given in terms of transport bandwidth on the links, switching capacity or forwarding resources at the nodes. Traffic demands for a whole network can be pictured as a traffic matrix, in which each element of the matrix specifies the traffic volume between any two nodes in that network. In order to fulfil these demands, the corresponding traffic has to be routed through one or more paths connecting the ingress and egress nodes. The amount of traffic associated with a route can be thought of as a flow. It is obviously clear, that for the purpose of traffic routing there shall be sufficient resources available in the network. Therefore, the need for network planning and management is becoming apparent, since network resources are limited and correspond directly to factors such as investment or operational cost. Apart from the functionality to exchange information, communication networks may completely differ from each other. Differences can exist, for instance, in communica- tion protocols and thus in nodal equipment and transmission technology. Moreover, due to the use of digital technology, it is common that a network is working on the top of another. Figure 2.1 gives such a multi-layer architecture1 . It shows among other things, 1 The notion "Transport Layer" in the figure is not to be confused with OSI Transport Layer. Here, it is used for the context of general networking i.e. for carrying services with lower data-rates (usually) over long distances.
  • 21. 2.2: Network Planning and Management 7 that IP networks can make use of either ATM (Asynchronous Transfer Mode) or directly SDH (Synchronous Digital Hierarchy) networks. SDH networks in turn can use WDM (Wavelength Division Multiplexing) networks to deliver services2 . A similar layering ar- chitecture can also be deployed for the PSTN (Public Switched Telephone Network). In regard to this multi-layer architecture, it is useful to distinguish two types of networks: (i) traffic networks, where demands are stochastic in nature (e.g. packet, voice or high speed on-demand circuit); they have also the switching/routing capability to handle short-lived requests on-demand; and (ii) transport networks, which provide high-data rate services that are required to be set up on a semi-permanent or permanent basis. Note that in such a multi-layer architecture, each layer has its own definition of traffic, link capacity and node functionality [PM04]. This dissertation is dealing with planning and management issues in IP networks, which can be categorized as traffic networks. For dimensioning problems, as those to be addressed in Chapter 5, we also need to consider the underlying transport network, since transport granularities are different from one type of transport network to another. 2.2 Network Planning and Management Network Planning and Management (NPM) addresses all activities related to the network development and evolution. There are basically three NPM activities, which correspond to different time-scales [PM04]3 : • long-term (months to years) activities to design or extend the network in order to meet demands and requirements for a long period of time. These include for exam- ple: topology design, node and link dimensioning, capacity expansion, routing and resilience planning. • medium-term (days to weeks) activities, which cover a list of actions to achieve the convergence towards the established long-term plans. Routing control (offline) can also be seen as a medium-term activity, at which routing is reconfigured to meet service requirements or to obtain a better network usage. • short-term (real-time to hours) activities, which incorporate real-time operations such as packet level operations (marking, scheduling, policing, buffer manage- ment), restoration or online routing control. Figure 2.2 shows a generic interaction model for the NPM activities both for traffic and transport networks. Long and medium-term NPM activities consider the current and fore- 2 We refer to [Tan03] for a comprehensive overview of these different types of networks. 3 Different and coarser time granularities can also be used, in particular when planning focuses on trans- port networks as in [Rob99] and [DDT+ 00].
  • 22. 8 Chapter 2: Network Planning and Optimization and Resource Management Long−Term Activities Medium−Term Activities Short−Term Activities Routing Update Various Controls Topology Forecast, Capacity Change Marketing Input (e.g. new Customers) Traffic Data (Statistics) Traffic Data (Statistics) Network e.g. Network Design e.g. (Near)Real Time Traffice.g. Offline Resource Management Figure 2.2: A generic model for Network Planning and Management cast information regarding customers, services and other strategical issues. The outcomes of the process are dependent on particular details of the activities. These can be a topo- logical change, link capacity upgrades, routing updates or even a complete new network design. For operational networks, current network status and traffic information are also considered by all NPM activities. They may possibly trigger a new management action e.g.: (i) if the current situation deviates significantly from the forecast in the case of long and medium term activities; or (ii) if a specific event such as congestion occurs in the case of short term management activities. The issues addressed in this work are mainly related to long and medium-term NPM activities in IP Networks. The first issue is about offline traffic engineering, which can be viewed as a medium-term management problem, in order to balance traffic, to avoid congestion or in general to efficiently provision network’s links for providing a desired QoS level. In this context, the network has to satisfy the current transmission demands with the already installed capacities without additional capital investment. The second issue is about network dimensioning problem, which is usually handled as a long-term NPM activity. For these reasons, if it is not stated explicitly, in this dissertation we use
  • 23. 2.3: Optimization Approaches 9 the term "planning and management" for the context of long and medium-term activities. Each NPM activity is carried out in order to achieve certain objectives and fulfill some requirements. Generally, these objectives and requirements can be in the form of either efficiency/performance measures or network’s cost. For long-term activities, the former is usually taken as requirements and the latter as objectives. For medium-term activities, where no new capital investment is expected, the former is also used as objective. In large network planning and design, networks have two types of cost: (i) CAPital EXpen- diture (CAPEX); and (ii) OPerational EXpenditure (OPEX). CAPEX refers to cost that is primarily due to installation of capacity and equipment in the network while OPEX refers to cost incurred due to operational needs of the network. Many design problems are considered under either one or the other category. A network designer might devise a slick solution that can decrease CAPEX, but on the other hand, can increase OPEX due to implementation complexity. In fact, there have been many cases where solutions that save CAPEX never made it to implementation in actual networks, simply because they are too complicated to be deployed [PM04]. 2.3 Optimization Approaches In the area of Operations Research (OR), optimization is defined as a discipline which is concerned with finding the maxima and minima of (objective) functions of many vari- ables, possibly subject to some constraints. The respresentation of an optimization prob- lem is often called as mathematical program. If the objective is a linear function, and the constraints are linear equalities or inequalities, the corresponding mathematical program is called Linear Program (LP)4 . Most of planning and management problems in communication networks can be de- scribed by multi-commodity flow models and mathematically formulated by linear or non-linear systems. The term multi-commodity comes from the fact that there are multi- ple demands (or commodities) that need to be routed in the network simultaneously and they compete for available resources (e.g. link capacities). Multi-commodity network flow problems are frequently pure LP problems as long as, roughly speaking, the objec- tive function is linear and bifurcated flows are allowed as independent decision variables. Such pure LP problems in most cases can be effectively solved to optimality using the well known simplex algorithm. Unfortunately, many NPM problems are not pure LP problems, since (some) binary/ in- tegral variables are necessary to be included in the formulation due to technological or other restrictions. Solving such problems is far from trivial, and usually we can expect 4 Sometimes we also use the acronym LP for Linear Programming.
  • 24. 10 Chapter 2: Network Planning and Optimization with great likehood that the problems are NP-complete5 and intrinsically can not be solved in an exact way in a reasonable time for large networks. In other words, in these cases, optimal solutions are frequently unreachable and one might use approximations to obtain good, but not necessarily optimal, solutions. Such solution procedures are called heuris- tic methods or simply heuristics. General heuristics that can be applied to many different problems are called meta-heuristics. They are basically high level concepts for exploring solution spaces by using certain strategies, which are often non-deterministic (random- triggered). Furthermore, a heuristic that always takes the best immediate or local solution while solving a problem is called greedy heuristic. Such a heuristic is usually problem specific. In this dissertation, heuristics are also used for cases where a problem can not be expressed as a linear program. This would generally mean that: (i) either such a problem is difficult to be expressed as a mathematical program; or (ii) the resulting formulation is non-linear. In the following subsections, we will discuss some of these approaches in more details. Special focus is put on those, which will be intensively used for solving the problems considered in Chapters 4, 5 and 6. 2.3.1 Linear Programming As stated earlier, a linear program is a mathematical model, in which the aim is to find a set of non-negative values for the unknowns or variables which maximize or minimize a linear equation or objective function, whilst satisfying a system of linear constraints. A linear program in which some, but not all, of the variables are required to be integers, is called a Mixed Integer Linear Program (MILP). If it is required that all the variables are integers, the corresponding linear program is called Integer Linear Program (ILP). For minimization problems, a linear program6 can be expressed as follows: minimize z = j cjxj (2.1) j aijxj ≤ bi, ∀i ∈ [1, m] (2.2) xj ∈ R+ , ∀j ∈ [1, n] where xj is the j-th decision variable, cj cost coefficient of variable j, aij coefficient for variable j in constraint i, and bi right hand side of constraint i. An IP or a MIP can be 5 In complexity theory, the NP-complete problems are the most difficult problems in the complexity class NP (Non-deterministic Polynomial), in the sense that they are the ones most likely not to be in the complexity class P (Polynomial). A common and reasonably accurate assumption in complexity theory is that "P" means "easy" and "not in P" means "hard". We refer to [Mar99], [PM04], [BG00] and [WIK05b] for formal definitions and further details of the complexity classes. 6 Depending on the context, the notion "LP" is used both to point: (i) to the class of linear program, which includes MILP and ILP; and also (ii) to the pure linear program i.e. without integrality constraints.
  • 25. 2.3: Optimization Approaches 11 obtained by constraining all or a certain set of xj to be in Z+ . Each set of xj values for all values of j that is compliant with the constraints, is called a feasible solution. The optimal solution is the feasible solution that minimizes the objective function. Pure LP problems can be solved using the famous simplex algorithm. The set of all fea- sible solutions to a given LP problem is a convex polytope7 formed by the intersection of hyperplanes8 , which are defined by the constraint equations. If a unique solution exists it is at a vertex of the polytope. To avoid labourous investigation of an excessive num- ber of vertices the simplex method provides a systematic computing scheme progressing from vertex to vertex in a direction of improving the objective function. Another popular solving method for LP problems, known as Interior Point Method (IPM), was introduced since the simplex method suffers from the exponential worst case behavior. However, for most practical applications, the simplex approach is proven to be very efficient. Infeasible or Integer? no Bounding Initialize; Mark the node as inactive; yes Are there still active nodes? Choose an active node; Mark the node as inactive; END Solve LP on these nodes; Branching(create 2 active nodes); no no yes yes Solve LP relaxation of root node; Infeasible or Integer? Figure 2.3: The Branch and Bound algo- rithm INFEA z = −14 (2 ; 2) INT z = −13.5 (1.5 ; 3) FRAC x <= 31 x >= 41 x <= 12 x >= 22 x <= 21 x >= 31 x <= 22 x >= 32 A B C D E F G IH z = −16.5 (3.5 ; 1.5) FRAC INFEA z = −16 FRAC (3 ; 1.75) z = −13 (3 ; 1) INT z = −15.5 FRAC (2.5 ; 2) (2 ; 2.25) FRAC z = −15 Figure 2.4: An example of BB-tree The standard algorithm for solving ILP and MILP problems is Branch and Bound (BB), which is basically a technique to speed up enumeration in a search tree. As indicated by 7 A polytope can be thought of as the generalization to any dimension of polygon in two dimensions. 8 A hyperplane is an N-dimensional analogy of (two-dimensional) plane in (three-dimensional) space and divides the N + 1 dimensional space into two half-spaces.
  • 26. 12 Chapter 2: Network Planning and Optimization its name, two fundamental operations in BB are: (i) branching i.e. the process and the strategy of creating two child subproblems from a parent problem; and (ii) bounding i.e. the process to get upper and lower bounds within a feasible subproblem. As an effect of branching, instead of solving the "difficult" parent problem, we try to solve a set of "easier" child subproblems. Futhermore, with the help of the established bounds, some of the child subproblems can be discarded. Lower bounds9 can be found e.g. by relaxation techniques. The LP relaxation of an ILP or a MILP is the linear program obtained by: (i) considering the same objective function; (ii) considering the same constraints; and (iii) relaxing the integrality property of the variables. The optimal value of the LP relaxation is the lower bound of the optimal value of the original ILP or MILP problem. Thus, if the optimal solution of the LP relaxation is compliant with the integrality constraints , it is also the optimal solution of the original ILP or MILP problem. Figure 2.3 depicts the branch and bound algorithm. It will be explained by making use of a BB-tree (as shown in Figure 2.4) for the following problem: minimize z = −3x1 − 4x2 subject to 2x1 + 4x2 ≤ 13 −2x1 + x2 ≤ 2 2x1 + 2x2 ≥ 1 6x1 − 4x2 ≤ 15 xj ∈ Z+ , ∀j ∈ {1, 2} At the beginning, the root node10 is defined and solved (e.g. by using the simplex al- gorithm). Since, as indicated by node A in Figure 2.4, the solution is fractional, i.e. (x1 = 3.5; x2 = 1.5), the algorithm will continue with branching. Suppose that we do branching on variable x1 as shown in the figure, forming nodes B and C. Node C is in- feasible, while node B is fractional. Thus, node B is further processed. Since an integer solution is not yet found so far, the bounding procedure is not performed and the process is continued with branching. The results are nodes D and E. Now, node D is integer and used as temporary upper bound (best solution). Node E is fractional and processed by the bounding procedure. In this case the lower bound at E (z = −15.5) is better than the current upper bound (z = −13). So it will again do branching, which yields nodes F and G. Node G is infeasible and node F is fractional with z = −15 which is still better than the upper bound. Branching at F results in nodes H and I. Node H is integer, which is better than the current upper bound. Thus it is adopted as the temporary upper bound value. Node I is fractional with z = −13.5 which is worse than the current upper bound with z = −14. Hence, it will be discarded. Since there are no more active nodes, the algorithm terminates and the temporary best solution is becoming the final solution of the problem. 9 As from now, if it is not explicitly stated, it is always assume that we consider minimization problems. 10 Note that a node in terminology of BB represents a subproblem, except the root node which represents the original LP relaxation problem.
  • 27. 2.3: Optimization Approaches 13 Convex Hull 2 x1 LP Relaxation x Figure 2.5: An illustration of feasible regions: LP relaxation vs. convex hull Although the branch and bound approach can considerably reduce the number of sub- problems to be evaluated, the remaining number will often still be so large that it heavily reduces the size of the problems that can be handled. The efficiency of BB depends on the quality of the lower bounds obtained by solving node problems of the BB-tree. If these bounds are close to the optimal integer solution then we can expect that the majority of the nodes will never be visited as most of the BB-tree branches will not be entered. Therefore, it may happen that it is advantageous to spend more time in a node and try to find a better lower bound than the one resulting from simple LP relaxation [PM04]. This is the basic idea behind an enhancement of BB technique called Branch and Cut (BC). The basic way to achieve better lower bounds is to construct valid inequalities in the BB-tree nodes. Such inequalities are generated and inserted to problems, on top of the standard constraints. The idea is to exploit the integrality of variables in order to produce inequalities that are valid for all integral solutions and at the same time remove parts of the polytope which contains non-integral optimal solutions. It is also desirable that such inequalities define the faces (facets)11 of the convex hull12 of the solution set for the original problem. For clarity, Figure 2.5 shows the depiction of the feasible regions of an LP relaxation and of a convex hull of the non-relaxed problem. If we can find a set of valid inequalities defining the convex hull of a problem, the corresponding problem can be solved easily since the solution of an LP for the transformed problem will always be a feasible solution of the original MILP/ILP problem. For solving the problems addressed in this dissertation, insofar LP, MILP or ILP are con- cerned, a commercial solver tool called CPLEX [CPL01] is used. For MILP and ILP 11 A facet is a part of a hyperplane, forming a boundary for a polytope. 12 A convex hull is the smallest polytope containing all feasible solutions of the non-relaxed version of a problem.
  • 28. 14 Chapter 2: Network Planning and Optimization problems, it exploits a (type of) branch and cut algorithm. Since it is a general solver, the cuts (i.e. valid inequalities) added to the model are also very general (we refer to [CPL01] for the details) i.e. CPLEX does not exploit specific structures of the considered problem. There are currently many publications addressing the issue of performing specific cuts for specific problems. However, such an approach is beyond the scope of this dissertation. 2.3.2 Greedy Heuristics Greedy Algorithm for Routing Problem for all demands d ∈ D do determine all possible routes Rd; for all possible route r ∈ Rd do calculate incremental cost for assignment d to r; end for select route r with the lowest cost; establish demand d on the chosen route r; end for Figure 2.6: A greedy algorithm for routing problem Greedy heuristics are simple and straightforward. They are called "greedy", in the sense that in each algorithm step they take decisions on the basis of information at hand without regard for future consequences. In other words, in each phase the algorithms decide for a local optimum in the hope that at the end they reach a near if not a global optimal so- lution. The main benefit of such algorithms is, that they can construct a feasible solution very fast. Figure 2.6 gives an example of a greedy algorithm for solving network’s routing problem, in order to minimize a certain cost parameter. It basically tries for each elemen- tary demand d to assign a route r, which is optimal at the time the allocation is done (i.e. locally optimal). Surely, with this allocation strategy, an end result is very much depen- dent on the sequence, in which the demand pool D is processed. And by using such a mechanism (as a part) in our optimization procedure, we essentially transform our prob- lems to sequential ordering problems (SOPs). The effectiveness of such an approach has been previously investigated for example in [Bec01]. 2.3.3 Plain Local Search Local search is a meta-heuristic search algorithm, which is based on the concept of neigh- borhood. A neighborhood of a solution vector x is a set of solutions that are in some sense close to x, for example because they can be easily computed from x or because they
  • 29. 2.3: Optimization Approaches 15 Plain Local Search PLS−1 x∗ ← xo; while (not stopCriteria) do x ← move(x∗ ); evaluate(x ); if(x better than x∗ ) x∗ ← x ; end while C * D x (A) x (C)* x (B)* B Neighborhood Neighborhood Neighborhood of of of A Figure 2.7: A general Plain Local Search PLS−1 framework Plain Local Search PLS−2 x∗ ← xo; while (not stopCriteria) do x ← move(xo); evaluate(x ); if(x better than x∗ ) x∗ ← x ; end while Neighborhood of *x (A) = xo B C D EA Figure 2.8: A general Plain Local Search PLS−2 framework share a significant amount of structure with x. For example in many combinatorial opti- mization problems, solutions can be represented as sequences or vectors. These solution representations enable the use of p−exchange neighborhoods i.e. neigborhoods that are obtained by exchanging p elements in a given sequence or vector [AL03]. The basic principle underlying local search is to start from an initial candidate solution xo and then, iteratively, make moves from one candidate solution to another candidate solution from its direct neighborhood (x ). This is illustrated in Figure 2.7. Let the best temporary solution be denoted by x∗ . At each iteration a move operator is called, to pick a neighbor x around x∗ . If the neighbor x is better than x∗ , x will be adopted as the new x∗ ; otherwise the algorithm proceeds with another move action. The "walk" in the solution space is visualized in Figure 2.7 right. Point A represents the initial solution xo, which is also the initial best solution x∗ (denoted by x∗ (A)). The circle around A illustrates the neighborhood around x∗ (A). The algorithm performs a move operation (indicated by an arrow) to point B which is a neighbor of A and better than x∗ (A). At point B, the corresponding neighborhood is also searched to find better solutions than x∗ (B), which is for example the point C. The search process is continued till the predefined stop criteria are satisfied. The above explained local search algorithm will be referred to as Plain Local Search PLS- 1, in order to distinguish it from a slightly different variant named PLS-2. Sometimes
  • 30. 16 Chapter 2: Network Planning and Optimization 1st Neighborhood 3rd Neighborhood *x (A) = xo 2nd Neighborhood B C A E D F of Figure 2.9: An example for a variable neighborhood structure applied to PLS−2 we want to find solutions which still have significant similarities with the given initial solution. In this case, we can concentrate searching on neighborhoods around a static solution point. Such local search algorithm and an example of moving paths in a single neighborhood are displayed in Figure 2.8. In order to increase the chance to escape from local optima, sometimes it is worth to de- ploy a variable neighborhood structure. Let Λ be a set of numbers, where each p ∈ Λ is representing the number of different elements of the current solution x and a neigh- bor x in the neighbourhood structure Hp. Figure 2.9 shows an example for a variable neighborhood structure around a static solution point (PLS-2) with three different types of neighborhoods. The search can be configured in such a way, that smaller neighbor- hoods are explored first and a larger neighborhood is chosen if the the previous smaller neighborhood is completely13 explored. Thus, Hp can be characterized by the following function: Y(x, x ) = j Yj(x, x ) = p ∀x ∈ Hp(x) (2.3) where Yj(x, x ) = 1 if the j-th element of x is not equal than that of x 0 else (2.4) Hp(x) ∩ Hq(x) = ∅, ∀p = q ∈ Λ (2.5) 13 In fact, due to the huge number of possible solutions, we do not perform exhaustive search in a neigh- borhood. Instead, we define a criterion, for which it can be assumed that a neighborhood is completely explored.
  • 31. 2.3: Optimization Approaches 17 Simulated Annealing x∗ ← xo; x ← xo; T ← To; while (not stopCriteria) do while (not equilibrium(T)) do x ← move(x); evaluate(x ); p ← computeProbability(T, x , x); if(accept(x , p)) x ← x ; if(x better than x∗ ) x∗ ← x; end while T ← update(T); end while F Neighborhood A of xo xo Solution Space B C D E G Figure 2.10: A general Simulated Annealing framework The property (2.5) is necessary in order not to explore again the previously searched neighborhoods. The concept of variable neighborhood as discussed above, is universal and can be applied to all meta-heuristics based on local search framework. This includes the PLS−1 or simulated annealing, which will be addressed in the next subsection. 2.3.4 Simulated Annealing Simulated Annealing (SA) was invented in 1983 by Kirkpatrick, Gellat and Vecchi, in- spired by the physical process of cooling down a material in a heat bath i.e. a process known as annealing. It belongs to the oldest meta-heuristics and is one of the first algo- rithms which had an explicit strategy to avoid local optima by allowing moves towards less performing solutions with a certain probability, which is a function of the parame- ter called temperature. The probability of doing such a move is decreasing during the search. Here we focus on a general SA framework as displayed in Figure 2.10. Similar to the plain local search approach, in each iteration step a move operator is called to pick a neighbor x around the current solution x. But here we explicitly distinguish between x and the temporary best solution x∗ , since as stated earlier, the solution x is also allowed to move to less performing solutions. After evaluating x and computing the acceptance probability p, it will be checked whether x is accepted and whether x∗ needs to be up- dated. The temperature is decreased each time the equilibrium for the current temperature is reached. The search process is terminated if the system is frozen i.e. all stopping cri- teria are satisfied. If ψ(x) represents the objective value of the solution x and T denotes the parameter temperature, the acceptance probability for minimization problems can be
  • 32. 18 Chapter 2: Network Planning and Optimization expressed as follows: p = 1 if ψ(x ) < ψ(x) exp(−ψ(x )−ψ(x) T ) if ψ(x ) ≥ ψ(x) (2.6) It simply says that: (i) if the neigbor x is better than the current solution x (i.e. ψ(x ) < ψ(x)), then x will be updated by x ; (ii) if the neighbor is worse than the current solution, x can still be accepted as x with the probability p; and (iii) the lower the temperature (i.e. the longer the algorithm’s running time) and the worse the quality of the neighbor, the lower the value of p. An abstract visualization for the moving path in the solution space for simulated annealing is depicted in Figure 2.10 right. Two paths are available in the figure, indicating the moving path for the temporary current solution x (i.e. the path A-B-C-D-E-F-G) and that for the temporary best solution x∗ (i.e. the path A-D-F). As can be seen in the Figure, during the search, x can leave the best temporary solution x∗ and not find it again. Temperature The starting temperature T shall enable that in the beginning nearly all perturbations are accepted. In practice, T can be chosen as the objective value of the initial solution i.e.: To = ψ(xo) (2.7) A cooling schedule (updating rule) for the temperature could be in the form of: Tk+1 = γ · Tk (2.8) where Tk is the current temperature, Tk+1 is the temperature of the next iteration and γ is a decreasing factor less than 1. At the end, T should be so small that only a very small number of perturbations is accepted i.e. almost only improving solutions should be accepted. Equilibrium and Frozen State Equilibrium and frozen state can be defined according to some parameters. The easiest way is by using a simple and general criterion such as a predefined number of iterations. Note that the equilibrium state is measured only for a constant temperature value, while the frozen state for the whole process. Several other parameters can also be used in combination with a maximum number of iterations e.g.: (i) if ψ(x∗ ) is not improved at least % after K1 iterations; or (ii) if the number of accepted moves is less than % of the last K2 iterations (recall that a move will be accepted on a random basis depending on the probability value p). Furthermore, for the frozen state we could also look at the temperature value e.g. when the temperature gets below a predefined constant Tmin the system is assumed to be frozen.
  • 33. 2.3: Optimization Approaches 19 2.3.5 Genetic Algorithms no Regeneration Crossover Mutation Parents Selection Initialize Population Stop Criteria fulfilled ? END yes Survivors Selection Figure 2.11: A general Genetic Algo- rithm framework (best 50 chromosomes) 00 0000 11 1111 00 0000 11 1111 50 Chromosomes Population Population Selection (remove 10%) 45 Chromosomes Selection (parents) 10 Chromosomes Offsprings 10 Chromosomes Selection Population 55 Chromosomes Crossover Mutation Figure 2.12: An example of population dy- namics Genetic Algorithms (GAs) were introduced by Holland in 1975, inspired by nature’s capa- bility to evolve individuals influenced by adaptation to the environment. In the optimiza- tion context, genetic algorithms use the concepts from population genetics and evolution theory in order to optimize the fitness of a population of individuals through recombi- nation (crossover) and mutation of their genes. Figure 2.11 shows a block diagram of a common GA implementation. At first, a solution in the problem domain has to be ap- propriately encoded and transformed to a chromosome14 in GA domain. The encoding mechanism is usually problem specific i.e. it depends much on the problem under con- sideration. At the beginning of the algorithm, the population has to be initialized i.e. some individuals or chromosomes have to be generated randomly or according to a cer- tain rule. After this, the evolution phase is taking place. The evolution consists of some mechanisms to perform selection and to form new individuals using genetic operators called crossover and mutation. Generally, crossover is intended to exploit the structure present in the available (good performing) individuals, while mutation is used to increase the capability to explore the solution space without getting stuck in local optima. Both of these genetic operators aim at producing some (hopefully) better individuals for the next iteration. The least successful individuals (according to their fitness parameter) from the previous iteration will naturally be removed and then be substituted by the new ones. Applying the described processes in many iterations we continously improve the average quality of the solutions until the predefined stopping criteria are met. As in PLS and SA 14 Throughout this dissertation we use the terms "chromosome" and "individual" interchangeably.
  • 34. 20 Chapter 2: Network Planning and Optimization frameworks, the stopping criteria can be derived from the standard parameters: the maxi- mum number of iterations, the improvement status of ψ(x∗ ) or their combination. In what follows, some general implementation issues will be discussed. Population Dynamics There are no standardized rules to decide how many chromosomes should be in the pop- ulation, since the size of the population is not directly correlated with the quality of the solutions. Figure 2.12 shows an example of population dynamics in a genetic algorithm. The size of the population is hold constantly at 50 individuals. Some of them, in this case 10 individuals, are selected as parents of the new individuals. Survivors of current generation are then selected by removing several individuals. After that, the population for the next generation is constructed by applying once again the selection mechanism, holding the population size the same as the previous generation. Selection Selection is done based on fitness. There are basically two selection mechanisms: (i) parents selection to get some parent individuals for a new generation; and (ii) survivors selection, which is intended to keep best individuals within the population and remove a certain number of the least performing individuals in the current generation. For parents selection we should find a strategy that: (i) ideally gives better individuals a better chance of being parents than less good individuals; and (ii) also gives less good individuals at least some chance of being parents, as they may provide some useful genetic material. This task can be fulfilled by a so-called rank selection: individuals in the population are ranked and each of them receives a probability value (to be selected) from this ranking. The probability value is measured relative to the probability value of the last (i.e. worst) individual; this means the last but one will have twice that probability etc. Of course these values have to be normalized such that the sum of these probability values must equal one. Afterwards, the probability values are mapped on the corresponding non overlapping intervals in the range [0, 1] and a randomly chosen number in this interval is used to select an individual. For survivors selection, we can simply sort the individuals according to their fitness from best to worst and then remove some of the least performing individuals. Forming New Individuals New individuals are generated by two standard GA operators: crossover and mutation. Crossover produces new individuals that inherit genes from their parents. On the other hand, mutation enables offsprings to have different genes as those from their parents.
  • 35. 2.3: Optimization Approaches 21 SA / GA PLS 1 10 0 Figure 2.13: A hybridization scheme between SA/GA and PLS Since both crossover and mutation are dependent on how a chromosome is encoded, de- tails of such mechanisms are also problem specific and can not be discussed until the problem and the corresponding encoding mechanism are defined. 2.3.6 Hybridization Each optimization approach mentioned above has its own advantages. Therefore, it is sometimes worth to make a hybridization of two or more approaches, combining their advantages together. In this subsection, two types of hybridization will be introduced. Firstly, we combine PLS together with SA or GA. PLS is very simple and usually has a good convergence behavior i.e. for relatively short execution time it can find good solutions. Unfortunately, it can also get stuck in local optima, simply because it has no explicit mechanism to avoid such a situation. On the other hand, SA or GA based approaches are theoretically able to explore a larger solution space and thus to avoid local optima. But they have a relatively slower convergence behavior. The basic idea behind the hybridization is illustrated in Figure 2.13. It shows the execution process of PLS or SA/GA as a function of a boolean variable σPLS, which indicates whether a condition for performing PLS is satisfied (σPLS = 1) or not (σPLS = 0). In the case of SA-PLS approach, this hybridization can easily be performed in a normal SA approach, by modifying the acceptance probability as follows: p =    1 if ψ(x ) < ψ(x) exp(−ψ(x )−ψ(x) T ) if ψ(x ) ≥ ψ(x)and σPLS = 0 0 otherwise (2.9) This means if σPLS = 1, the probability p will have the value of 1 if the neighbor x is better than x, and the value of 0 if x is worse than x. This is the behavior of PLS. For σPLS = 0 equation (2.9) is equivalent to (2.6). Note that for a quite low temperature value, which is roughly equivalent with a long execution time, a normal SA behaves approximately like PLS. Thus, this modification mainly effects the SA characteristics at high temperature values.
  • 36. 22 Chapter 2: Network Planning and Optimization (best 50 Chr.) 000000000 000 111111111 111 000000000000 111111111111Population 45 Chromosomes Population Search result 55 or 56 Chromosomes (1 or 0 Chr.) PLS Crossover Mutation 1 Chromosome Selection (parents) 10 Chr. Selection Population 50 Chromosomes (remove 10%) 10 Chr. Offsprings Selection Figure 2.14: Population dynamics in a hybrid GA-PLS scheme For the case of GA-PLS approach, it is a bit more complicated, mainly because genetic algorithm is a population based (multi-agent) approach, while PLS is a single-agent ap- proach. One possibility is to construct a quasi parallel PLS process at a certain GA evo- lution cycle (iteration), where the variable σPLS has the value of 1. This possibility is displayed as a part of population dynamics in Figure 2.14 (cf. Figure 2.12). Here, an individual is selected from a number of best individuals in the population and used as input for the PLS process. If PLS is able to find a better solution (than the original input individual), it will be sent to the population as a new individual. Note that for such hybrid approaches, the PLS function is active if σPLS = 1. In both SA-PLS and GA-PLS approaches, this activation can base on the simple criteria such as: (i) if a certain number of iteration is reached; or (ii) if the best temporary solution x∗ is just improved. Furthermore, in simulated annealing it is also possible to activate PLS, if the neighborhood around x∗ is not yet completely explored. Due to the huge number of possible solutions, performance of stochastic search ap- proaches is sometimes still far from expectation e.g. in terms of convergence or solu- tion quality. But often, the existence of simple problem-specific heuristics can improve performance a lot. In this regard, a hybridization between such a simple heuristic and a stochastic search algorithm is of particular importance. Figure 2.15a gives a general diagram of a hybrid algorithm, which makes use of simple improving heuristics. Search algorithms meant in the diagram are stochastic search algorithms e.g. PLS, SA, GA, SA-
  • 37. 2.3: Optimization Approaches 23 Algorithm Solution e.g. in terms of a Sequence of Demands (b) Improving Improved Solution Solution (a) Search Algorithm Simple Heuristic Greedy Heuristic Search Objective Value Figure 2.15: Hybridization of general search algorithms with simple heuristics PLS, GA-PLS or others. A simple improving heuristic takes a solution from the search algorithm and tries to improve that solution (stochastically or deterministically). Thus, in local search terminology for instance, it can be adopted as a new type of (in addition to a standard random) move operator. In Figure 2.15b another hybrid algorithm is depicted. Here, a greedy heuristic is used in order to interpret and assess a solution produced by the stochastic search algorithm. In the case of network routing problems, an example would be that the search algorithm optimizes the sequence in which the greedy heuristic processes the demands. Thus, the applicability of this kind of hybridization is strongly related to how a solution is represented inside the stochastic search algorithm and how the information contained in a solution can be used by the greedy heuristic to construct an actual solution. Such a hybridization, as reported in [Bec01] has several benefits: (i) a greedy heuristic is typically simple and can always produce feasible solutions; (ii) the solution space to be explored is usually (much) smaller compared to the original solution space, where the stochastic search algorithm is performed without greedy heuristics; this might increase the performance of the search algorithm. The latter is a also direct impact of the problem transformation, as implicitly stated by using greedy heuristics. For ex- ample, consider a network’s routing problem with 10 node-pairs, each has 10 candidate paths. The solution space contains 1010 possible solutions. If we now use the greedy heuristic as discussed in Subsection 2.3.2 and encode a solution as a specific sequence of demands, in which they are processed by the greedy heuristic then the current solution space now contains 10! possible solutions. Unfortunately, this mechanism sometimes will introduce problems. As the search process is reduced to a certain area of the (original) so- lution space, several good or optimal solutions might be excluded. However, as has been shown in [Bec01], due to the largeness of the solution space in most planning problems in communication networks, such a problem happens rarely.
  • 38. 24 Chapter 2: Network Planning and Optimization
  • 39. Chapter 3 Overview of IP Routing The Internet is a large network that connected about 160 million hosts (in June 2002)1 , which are organized in about 13,000 distinct domains2 , called Autonomous Systems (ASes) [QPS+ 03]. With the decommissioning of the NSFNet3 Internet backbone net- work in 1995, the Internet now functions with no single central network at all and en- tirely consists of the various commercial Internet Service Providers (ISPs), private net- works and Research and Education Networks (RENs), as connected at their peering points [WIK05a]. Global connectivity is provided by so-called Tier-1 ISPs; these represent the highest hierarchy level of the network and exchange traffic to each other on a revenue- neutral basis (i.e. a Tier-1 ISP does not pay for transit on other Tier-1 ISP networks). An AS has its own routers and routing policies, and connects (peers) to other ASes to exchange traffic with remote hosts. A peering link could connect to a public Internet Exchange Point (IXP), or directly to a private peer or transit/upstream provider. Inside an AS, the network can be viewed as a directed graph, where nodes and arcs represent routers and IP links, respectively. A typical ISP network architecture is depicted in Figure 3.1. Since an ISP usually offers services at several places, geographically the network consists of several Point-of-Presences (PoPs) where a set of routers is maintained. From a simplified perspective, a network consists of a combination of Core Routers (CRs) con- nected to other PoPs, Border Routers (BRs) connected to other ASes, Hosting Routers (HRs) connected to media servers, and Access Routers (ARs) connected directly to cus- tomers [XTF+ 02]. In an operational network, this split in functionality simplifies the requirements for each router. For example: (i) an AR should provide high port density to connect to a large number of customers with various access speeds and technologies; (ii) a CR should provide high packet forwarding performance; etc. Furthermore, isolating peer 1 In January 2005 it increased to more than 310 million hosts [ISC05]. 2 A domain corresponds roughly to one company or one Internet Service Provider. 3 NSFNet stands for National Science Foundation Network, which was the scientific research and edu- cation network in the USA. 25
  • 40. 26 Chapter 3: Overview of IP Routing Access Links CR: Core Router HR: Hosting Router BR: Border Router AR: Access Router HR HR CR CR AR AR CR CR HR BR CR CR AR CR CRBR PoP Peering Links PoP: Point of Presence Figure 3.1: A typical ISP architecture traffic to a small set of BRs simplifies the management of inter-domain routing policies [FGL+ 00]. Currently, Internet routing is handled by two distinct protocols: Exterior Gateway Pro- tocol (EGP) and Interior Gateway Protocol (IGP). On one hand, EGP is used for routing between ASes, distributing reachability information and selecting the best route to each destination that is compatible with the routing policies of the transit domains without knowing their topology. The Border Gateway Protocol (BGP) is the current de facto standard inter-domain routing protocol. On the other hand, IGP handles routing inside a single domain, determines the best route to reach each internal subnetwork or host, based on some metrics (e.g. delay, bandwidth). The most commonly used IGPs todays are Open Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS). To increase routing flexibility and provide QoS in IP networks, several new enhancements have recently been proposed. There are two technologies which are of paramount impor- tant and likely to be a common standard for IP networks in providing better services in the near future. These are Multi-Protocol Label Switching (MPLS) and Differentitated Services (DiffServ). MPLS provides a basic means to efficiently steer IP traffic, while DiffServ gives the possibility to differentiate treatments for IP packets with respect to their class of service. Both will be addressed later on in this chapter. In this dissertation we only focus on intra-domain routing, including MPLS. Surely,
  • 41. 3.1: Classical IP Networks 27 MPLS can also be applied for inter-domain routing, but the use of such a mechanism is still problematic. This is because each ISP is administratively independent, and inter- domain coordination is in practice very difficult to realize. The rest of this chapter is organized as follows. Section 3.1 describes routing in classical IP networks. Here, the term "classic" is used to refer to IP networks that route traffic using an IGP. In Section 3.2 MPLS is briefly reviewed. Finally, Section 3.3 reveals the DiffServ architecture and the corresponding impacts on routing in the network. 3.1 Classical IP Networks Communication in the Internet works in the following way. The transport layer protocol TCP (Transport Control Protocol) takes data streams and breaks them up into packets (datagrams). Each packet is transmitted through the networks, possibly being fragmented into smaller units as it goes. When all the pieces finally get to the destination machine, they are reassembled by the network layer into the original packet. This packet is then handed over to the transport layer, which inserts it into the receiving process input stream. If a packet is lost somewhere, the transport layer at both sides will initiate a retransmis- sion. Thus, the network layer such as IP is only responsible to route packets from one end to another without considering reliability of delivery [Tan03, PM04]. The first IGP used in the Internet was the Routing Information Protocol (RIP), which is a distance vector protocol based on the Bellman-Ford algorithm inherited from the ARPANET4 . Distance vector protocols maintain information on a per-node basis in terms of a routing table, which contains a vector of distances to all known destinations. Neigh- boring routers regularly exchange their routing tables, so that with this information each router is able to compute and update its own distances and again report them to the neigh- bors. In RIP, the distance (metric) is very simple: the number of hops (i.e. hop-count), which is expressed as an integer varying between 1 and 15; the value 16 denotes infinity. RIP worked well in small systems, but less well as ASes got larger. It also suffered from the count-to-infinity5 problem and slow convergence. These problems were the motivation in developing several protocols based on link-state technology. The principle of link state routing is very simple. Instead of trying to com- pute "best routes" (shortest paths) in a distributed fashion, all the nodes will maintain a complete copy of the network map and perform a complete computation of the best routes from this local map. Each record in database represents one link in the network and has been advertised by a node that is responsible for it. It contains an interface identifier and 4 ARPANET is the progenitor of the Internet, was established in 1969 by the U.S. Defence Advanced Research Agency (DARPA). 5 We refer to [Tan03, Hui95] for detail explanations.
  • 42. 28 Chapter 3: Overview of IP Routing information describing the state of the link: the destination and the distance (also called as link cost, metric or weight). With this information, by using Dijkstra’s algorithm, each node can easily compute the shortest path from itself to all other nodes. As all nodes have the same database, the routes are coherent and loops cannot occur [Hui95]. Today, the main IGP protocols are OSPF and IS-IS, which belong to link-state protocols. IS-IS is actually very similar to OSPF, but it has been specified by the International Or- ganization for Standardization (ISO). Compared to RIP, OSPF is in general much more complex. OSPF supports a variety of distance metrics e.g. physical distance, delay or cost. However, for path computation only one metric is used at a time. It also allows hierarchical routing and is more stable (faster convergence). Therefore, it is used in larger networks such as enterprise and ISP internal networks. For the rest of this dissertation, we always use the term "IGP" mainly to refer to "OSPF". Otherwise it will be stated explicitly. In the following paragraphs, we will review the routing mechanism facilitated by IGP to provide a basis for our traffic engineering approach, which will be addressed in next chapter. Our interest is mainly on data-plane operations6 . An IP datagram consists of a header and a data part. The header has a 20-byte fixed part and a variable length optional part. The header consists of several pre-defined fields. In the context of routing, only the destination address field is of prominent interest, since packets are routed based on their destinations. An extended feature to support routing based on class of service as specified in the Type of Service (ToS) field is in practice rarely used. It does not play any substantial role until the introduction of MPLS and DiffServ (see Section 3.3). The main advantage of shortest path routing is that it can be implemented in a distributed way, in a form known as (connectionless) hop-by-hop destination based routing. Figure 3.2 gives an example of such a routing mechanism. Assume that we have a six-router network which is configured as displayed in Figure 3.2a. Router 1 connects to network A, whilst router 5 and router 6 to network B and network C, respectively. Each router main- tains the complete network map and computes shortest paths to all destinations, which in turn are used for constructing a routing table consisting of next hop and interface7 information. Figures 3.2b and 3.2c show an example of the shortest path tree and the corresponding routing table seen from router 1. If a packet arrives at a certain router, it will look at the destination address and forward the packet to the correct outgoing inter- face as specified by its routing table. This illustrates in Figure 3.2d. Two packets with destinations B4 (representing host number 4 inside network B) and C1 (representing host number 1 inside network C) arrive at router 1, will be forwarded to router 3. Since router 3 also has a routing table derived from the same network map, it knows that the packet with 6 Routing has two types of operations: data-plane and control-plane operations. The data-plane opera- tions are those that are performed on every packet whereas the control-plane sets up information to facilitate data-plane operations (e.g. routing table). 7 A link may consist of several interfaces.
  • 43. 3.1: Classical IP Networks 29 Destination Next Hop Interface B4 C1 B4 C1 B4 C1 6 5 3 C 2 A 1 2 43 5 6 1 1 2 4 5 6 network A network B network C 5 53 2 1 2 2 A B C direct 3 3 1−A 1−3 1−3 3 (a) (b) (c) (d) 4 B C1 C1B4 Figure 3.2: Hop-by-hop destination-based IP routing destination network B must be forwarded to router 5 and that with destination network C to router 4. This process continues till those packets reach their destination hosts. In OSPF networks, it is possible, to some extent, to do load balancing. Using the so-called Equal-Cost Multi-Path (ECMP) rule, if there are multiple shortest paths to a particular destination, the corresponding traffic is equally split over the outgoing links belonging to these shortest paths. In practice, the split may not exactly follow ECMP; that is, the split decision is not done on a packet-by-packet basis in a round robin manner among the multiple outgoing links that coincide with the (multiple) shortest paths [PM04]. This is because such a mechanism may introduce packet disordering problems, which can in many cases lead to performance degradation that is not easy to overcome. Therefore the following load balancing schemes are generally recommended: • destination based load balancing i.e. in the case of multiple shortest paths, traffic
  • 44. 30 Chapter 3: Overview of IP Routing Destination Next Hop Interface C2 C3 C4 C2 C1 C3 C4 C4 C3 C3 C4 C1 C2 C1 C2 C1 C2 6 1 2 43 5 6 network A network B network C 1 11 1 1 1 1 (a) 6 3 (d) A direct 1−A 3 1−3 2 1−2 B 3 1−3 C (c) (b) 1 2 3 4 5 A C B 1 2 4 5 C3 C4 C1 Figure 3.3: Hop-by-hop routing with ECMP to a certain host inside a certain network is routed on a single path and traffic to different hosts in the same network could travel through different paths. • per transport connection load balancing. In this scheme, even if multiple shortest paths are available, packets that belong to a particular transport session are routed on a specific shortest path. Packets for another session, which may have the same pair of origin-destination routers, can take a different shortest path. In contrast to packet-by-packet load balancing scheme, both per-destination and per- transport connection schemes may result in inequal traffic splitting. This is very depen- dent on many factors such as network sizes, types of applications, the algorithm chosen by routers’ vendor etc. In this work we always assume ECMP to mean equal split in terms of traffic volume. Figure 3.3 depicts hop-by-hop routing with ECMP rule. Setting the weights as in Figure 3.3a results in several ties. For example, router 1 has a shortest path structure as in Figure
  • 45. 3.2: IP/MPLS Networks 31 3.3b and builds its routing table as in Figure 3.3c. Now, if several packets with destination network C arrive at router 1, it will try to balance the load among the available interfaces i.e. forward the packets to node 2 and 3. A similar situation also happens at router 3, where two interfaces lead to shortest paths. Furthermore, Figure 3.3d also illustrates a per-destination load balancing scheme as mentioned in this paragraph. 3.2 IP/MPLS Networks Multi-Protocol Label Switching (MPLS) is a forwarding scheme. As it has been dis- cussed in the previous section, in the traditional IP forwarding paradigm, an independent forwarding decision is made at each hop as a packet travels from one router to the next. The IP header is analyzed and the next hop is chosen based on this analysis and the infor- mation in the routing table. In an MPLS environment, the analysis of the packet header is performed just once, when a packet enters the MPLS domain. At these ingress points, Label Switching Routers (LSRs) classify IP packets into Forwarding Equivalence Classes (FECs) based on a variety of factors, including e.g. a combination of the information carried in the IP header of the packets and the local routing information maintained by the LSRs. A label, which can be read in the first 20-bit field of an MPLS header, is then assigned to each packet according to its FEC. An MPLS header that is encapsulated be- tween the link layer and the network layer header, also contains a 3-bit experimental field (EXP − formerly known as Class-of-Service/CoS field), a 1-bit label stack indicator and an 8-bit Time-To-Live (TTL) field. Inside an MPLS domain, an LSR examines the label and possibly the experimental field and uses this information to make packet-forwarding decisions. This label is used as a look-up index to the label forwarding table. Each incoming packet will be processed according to the corresponding label forwarding entry: the incoming label is replaced by an outgoing label and the packet is switched to the next LSR. Before a packet leaves an MPLS domain, its label is removed. The path between an ingress LSR and an egress LSR is called a Label Switched Path (LSP). Figure 3.4 shows an example of routing inside an MPLS domain. In Figure 3.4a the arrows represent two LSPs. The first LSP is between LSR 1 (ingress) and LSR 5 (egress), using label sequence 10 and 20. The second LSP originates from LSR 1 and terminates at LSR 6, using label sequence 30, 40 and 50. Figure 3.4b gives the forwarding table for LSR 1. In this example, the FECs are derived only from destination networks. Since LSR 1 is the ingress point, the table basically specifies mapping from FECs to outgoing labels. From LSR 3 point of view, the label forwarding table looks like Figure 3.4c. It only maps incoming to outgoing labels, since LSR 3 is in the middle (core) of the network. Now consider the case that two packets with destination C1 and B4 arrive at ingress LSR 1. The packet headers will be analyzed before they are processed according
  • 46. 32 Chapter 3: Overview of IP Routing Dest. Label Inter− faceLabel Inter− face In Out Label Inter− faceLabel Inter− face In Out 1−A − 1−3 1−3 30 1 2 4 5 C B 1 2 43 5 6 network A network B network C (a) (b) (c) 10 20 30 40 50 6 3 (d) 3−5 3−4 30 10 20 1−3 1−3 20 40 40 50 10 B4 B4 B4 C1 C1 C1 C1 B4 C1 30 10 1−A − Figure 3.4: Routing with MPLS to the forwarding table: (i) label 10 is inserted to packet B4, which is then forwarded to LSR 3; (ii) label 30 is imposed to packet C1, which is also forwarded to LSR 3. At LSR 3, these packets are switched: incoming packet with label 10 is forwarded to LSR 5 with outgoing label 20, while that with label 30 is forwarded to LSR 4 with outgoing label 40. At the egress LSRs 5 and 6, the labels are removed and the packets are sent to the destination hosts. As inherently indicated in the previous example, An LSP is uni-directional from sender to receiver. LSPs can be set up either manually or signaled using protocols for label distribution. In the first case, one has to manually assign labels on all LSRs (ingress, transit and egress). In the second case, a signaling protocol is used to set up the path and dynamically assign labels. One just needs to configure the ingress routers, since transit and egress routers accept signaling information from the ingress router and they set up and maintain the LSP cooperatively. In both cases, the issue which intermediate LSRs an LSP may traverse is a management concern to be settled during a planning or a path
  • 47. 3.3: Differentiated Services 33 computation phase. The ability to set up Explicit Routes (ERs) for the LSPs is one of the most useful features of MPLS, since it provides a complete control over a routing path. This has not been easy to implement in the classical IP routing technology. For the latter case, it is also possible to set up LSPs automatically: • by using (vanilla) Label Distribution Protocol (LDP). The LSPs established by the LDP are identical to the routing paths yielded by hop-by-hop IP routing. LDP basically maps network layer routing information from IGP directly to MPLS layer. Two LSPs as depicted in Figure 3.4a could be generated by LDP for the weight system as shown in Figure 3.2a. • by using either Constraint-based Routing Label Distribution Protocol (CR-LDP) or Resource reSerVation Protocol with Traffic Engineering extension (RSVP-TE). These protocols perform Constraint-Based Routing (CBR)8 to automatically com- pute the intermediate hops of an LSP. LSP setup can be control driven i.e. triggered by control traffic such as routing updates. Or, it can be data driven i.e. triggered by the request of a flow or an aggregation of flows [XN99]. 3.3 Differentiated Services There are two architectures for adding QoS capabilities to today’s IP networks: Integrated Services (IntServ) and Differentiated Services (DiffServ/DS). IntServ maintains an end- to-end QoS for an individual or a group of flows with the help of a signaling protocol such as RSVP. The idea behind IntServ is that routers have to be able to reserve resources in order to provide QoS for specific user packet streams or flows. This unfortunately requires flow-specific9 state to be maintained in the routers, which in turn makes IntServ lacking scalability, since the amount of state information increases proportionally with the number of flows. DiffServ, on the other hand, works on the provisioned-QoS model where network elements are set up to service multiple classes of traffic, with varying requirements. Its basic idea is to keep packet forwarding simple by categorizing traffic into (a small number of) different classes and thus removing flow-specific information from the network core. Therefore, DiffServ is the preferred technology for large-scale IP QoS deployments [FE02]. Traffic entering a DS-domain is classified, policed and possibly conditioned at the edges of the network, and assigned to different Behaviour Aggregates (BAs). Each behaviour 8 CBR denotes a class of routing algorithms that base path selection decisions on a set of requirements or constraints, in addition to destination. 9 Here, the definition of flow is more general than that as given in Chapter 2. For example, packets with the same value of (src. address; src. port; dest. address; dest. port) might be considered as a flow.
  • 48. 34 Chapter 3: Overview of IP Routing Label Inter− faceLabel Inter− face In Out Class FEC Dest. Label Inter− faceLabel Inter− face In Out network A 30 60 40 C C 60 70 (a) 4−6 4−6 80 network C 50 4−3 4−2 80 50 LSP 1 LSP 2 (b) (c) 40 70 1 1−2 1−3 2 − − 43 1−A 1−A 30 5 6 P BE Figure 3.5: Class-based routing in a DS-MPLS network aggregate is identified by a single Differentiated Services Code Point (DSCP), which is lo- cated at the first six bits in the DS-field10 of the IP header. Within the core of the network, scheduling and queueing control mechanisms are applied to the traffic classes accord- ing to the Per-Hop Behaviour (PHB) associated with the DSCP. By assigning traffic of different classes to different DSCPs, the DiffServ network provides different forwarding treatements and thus different levels of QoS. Currently, several PHBs are defined: • The Expedited Forwarding (EF) PHB. The EF PHB is used to provide premium services i.e. for traffic with low loss, low delay, low jitter, assured bandwidth re- quirements, such as Voice over IP (VoIP), video or online trading software. • The Assured Forwarding (AF) PHB. The AF PHB is used to support data traffic with assured bandwidth requirements. It is further divided into four subclasses. Within each subclass it is possible to specify 3 drop precedence values. This PHB can be used to provide olympic services (i.e. three tiers of services: gold, silver and bronze, with decreasing quality). • The Default (DF) PHB. The DF PHB represents the default forwarding behaviour. Packets, which are not identified as belonging to another class, belong to this ag- gregate. This PHB is typically used for the classical best effort services. DiffServ can be deployed together with MPLS. In this so-called DS-MPLS architecture, packets marked with DSCP will enter the MPLS network and PHB is enforced by every 10 The DS-field replaces the original ToS byte in IPv4 (IP version 4) or the Traffic Class field in IPv6.
  • 49. 3.3: Differentiated Services 35 LSR along the path. As LSRs do not have any knowledge of the IP header, PHB has to be achieved by looking at different information. Two general approaches are used to mark MPLS traffic for QoS handling within an MPLS network [DR00, CIS]. In the first method, the DS coloring information is mapped in the EXP field of the MPLS header. LSPs that use this approach are called E-LSPs, where packets are buffered and sched- uled in accordance with the EXP fields. Alternatively, the label associated with each MPLS packet carries the portion of the DS marking that specifies how a packet should be queued. The dropping precedence portion of the DS marking is carried in the EXP bits. The ingress LSR examines the DSCP in the IP header and selects an LSP that has been provisioned for that QoS level. LSPs using this approach are called L-LSPs where QoS information is inferred from the MPLS label. It is obvious that routing by means of E-LSPs can happen both at class or coarser granu- larity, while that using L-LSPs can only occur at class granularity. Since in our context, we consider class-based routing, it does not really matter which type of LSP is used. This chapter will be closed with an example of a class-based routing mechanism inside a DS- MPLS network as described in Figure 3.5, which is, to a great extent, self explanatory. Consider that we have two classes of traffic to be routed from LSR 1 to LSR 6: premium traffic (denoted by P) and best effort traffic (BE). This means that two LSPs (one for each class) has to be established. These are, for example, configured as in Figure 3.5a. Assume that LSP 1 is allocated for premium and LSP 2 for best effort traffic. At ingress LSR 1 the label forwarding table has to be set appropriately i.e. class information has to be included in the FECs. Such a label forwarding table is given in Figure 3.5b. Actually, this is the only difference between DS and non DS-compliant MPLS networks, since in the core of the network, packets are switched in the same manner (cf. Figure 3.4c and Figure 3.5c). Note that for the case of E-LSPs, LSPs 1 and 2 could use the same label at link (4,6), as labels do not correspond to DSCP. By contrast, in the case of L-LSPs, two LSPs for two different traffic classes can not share labels, even if the paths are identical.
  • 50. 36 Chapter 3: Overview of IP Routing
  • 51. Chapter 4 Traffic Engineering in Classical and Transitional IP Networks To cope with the rapid growth of the Internet and due to increasing requirements for ser- vice quality, some efforts have been invested by Internet Service Providers (ISPs), to build a more scalable network architecture and expand network infrastructure and capacity. An- other important issue is traffic engineering, that could give ISPs some degree of control of the traffic distributed over the network. In routing context, traffic engineering means mapping traffic flows onto the existing physical network topology in the most effective way to accomplish desired operational objectives. This issue is the main focus of this chapter, which is organized as follows. First, in Section 4.1 we deal with traffic engi- neering problem in classical IP networks. After that, in Section 4.2 we consider several types of transitional IP networks and propose the corresponding traffic engineering solu- tion. Further, Section 4.3 addresses the issue of partial demand increase and its impact on resource occupancy. Finally, some general remarks and other traffic engineering related activities are given in Section 4.4. 4.1 Metric-Based Traffic Engineering The Internet was designed as a best effort network and was not designed to guarantee a particular level of performance, certainly not end-to-end quality of service [Gou01]. In this regard, traffic engineering can be viewed as a part of efforts to improve the capabil- ity of IP networks to provide better services. In classical IP networks, there are several approaches for deploying traffic engineering: by optimizing the parameters used for rout- ing decisions, so that a better network performance will be obtained [FT00] [SKK00] [Gou01] [MK02b] [KP00] [BAGLM00], or by using explicit routing in an overlay model with ATM or Frame Relay technology [WWZ01]. Recent developments in MPLS open 37
  • 52. 38 Chapter 4: Traffic Engineering in Classical and Transitional IP Networks new possibilities to address some of the limitations of IP systems concerning traffic en- gineering. However, in this section we consider only the case, where traffic engineering is performed by optimizing routing paramters. It is worth to investigate this possibility because: (i) the information provided by the "classical" routing protocol might still be used in the future (even in more advanced networks), since it provides a simple, scalable and robust connectionless routing mechanism, (ii) it seems that a more sophisticated and widely standardized routing scheme might not be soon becoming reality, and (iii) many internet domains are still working with "classical" routing schemes. Most routing protocols in classical IP networks (like OSPF or IS-IS) follow the same principle: they use weights, also called link costs or metrics, to determine the shortest paths to route the traffic. These weights are static (i.e. traffic independent), dimensionless and defined as a set of values associated with the links on the network, which can be set in a router’s database. Then, each router computes the shortest paths to all destination using Dijkstra’s algorithm according to these metric values. In case of multiple shortest paths, some vendors have implemented a load balancing mechanism like ECMP. Thus, the traffic flow will be split roughlya evenly over several shortest paths. Depending on demands and network configuration, the above described mechanism may lead to the situation where some parts of the network being over-utilized, which in turn degrades the network performance due to congestion and packet losses, while some other parts being under-utilized. Given a network topology and predicted traffic demands, the problem of metric-based traffic engineering in IP networks is to find a set of link-weights that optimizes network performance i.e. that spreads the load on the network more uniformly. Finding an ex- act solution for this problem is proven to be NP-complete [FT00][FT02]. For small or at most medium-sized networks, depending on the associated link structure, methods to find the exact solution such MILP are still applicable [SKK00] [KP00] [BAGLM00]. But the NP-completeness of the problem implies that as the network grows the resulting inte- ger program is too complex to be solved in reasonable computation time. In such cases heuristics have to be deployed. A heuristic is more flexible in terms of optimization crite- ria (constraints) and might suffer less from the scalability problem. Recent work such as reported in [MKSB02] tries to utilize MILP on large networks by using a decomposition method and optimize the parts of the network independently. Such an approach can be seen as a form of heuristic as well. There is also some work using meta-heuristic frame- work like local-search [FT00][FT02] or simulated-allocation [GPS+ 00]. To the best of our knowledge, at the time we started the research, there were only a few publications i.e. [ERP02][KP00] that applied evolutionary computation frameworks to the problem. The earlier versions of the work presented in this section have been published in [MK02a], [MK02b] and [MK05a]. a In practice, it is difficult to achieve exact even splitting due to the reasons mentioned in Section 3.1. However, for computation purpose we always assume that in case of ties a flow is evenly split.
  • 53. 4.1: Metric-Based Traffic Engineering 39 (b)(a) 6 11 1 1 1 1 2 21 2 3 5 5 121 3 4 5 6 2 3 4 5 6 1 2 4 6 5 3 1 2 3 4 5 1 Figure 4.1: Shortest path structures seen from node 1 for the case of unique and non- unique shortest path metrics Contributions Our contributions are mainly in the following aspects : • We introduce a novel Hybrid Genetic Algorithm (HGA), which combines a popula- tion-based search capability in GA with a simple individual-based search heuristic, that simulates network administrators behavior when they try to overcome conges- tion problems in certain links. • We propose a plain but flexible optimization objective, that considers both maxi- mum link utilization and weight reconfiguration simultaneously. • We consider both multiple and unique shortest path routing schemes. The remainder of this section is organized as follows. In the next subsection we first present a mathematical model of the problem and define the lower bound of the solution obtained from a so-called general routing problem [FT00][FT02]. In Subsection 4.1.2 we propose an objective function that takes the weights’ changes to be performed for an existing operational network into consideration. After that, in Section 4.1.3 we explain the proposed hybrid genetic algorithm to solve the problem. Finally, some computational results will be presented in Section 4.1.4. 4.1.1 Problem Formulation As previously mentioned, demands in IP networks are routed along paths, which are se- lected using Dijkstra’s shortest path algorithm with respect to link weights. In the case of