Professional Documents
Culture Documents
Prepared by:
Supervisor’s Name:
Eng. Mahmud Ibr Bennis
Tripoli, Libya
Spring 2022
Dedication
II
Acknowledgments
Firstly, we would like to give all our thanks to (Allah). Were it not for His support and help, we would
not have reached this level, and this project would not have seen the light. Praise to Allah, Lord of the
world.
Secondly, we are profoundly and forever indebted to all our family members for their prayers, warm
love, unbelievable support, continued patience, and encouragement throughout our entire life.
Thirdly, we must thank the College of Electronic Technology who believed in us and gave us the chance
to pursue our dreams and never to forget all its staff and professors, whom we have worked with over
the last four years, for showing us what it means to be dedicated. Each in their unique way, of you has
given your time, energy, and expertise, and We are richer for it.
Fourthly, we would like to extend our special thanks, appreciation, and complete gratitude to our
supervisor Eng. Mahmud Ibr Bennis for his valuable guidance, tremendous academic and practical
support, suggestions, patience, granting us opportunities to explore our academic interests, and
encouragement throughout the whole of this graduation project.
fifthly, we would like to extend our special thanks and appreciation to Eng. Hadil Younis for her
unlimited support in accomplishing this work.
Last but by no means least, we would like to dedicate this achievement to all the wonderful people in
our whole life, and we are welcoming to any suggestions that will improve ourselves for near-future
works.
III
Abstract
Fixed and mobile telecom operators, enterprise network operators and cloud providers strive
to face the challenging demands coming from the evolution of IP networks (e.g., huge
bandwidth requirements, integration of billions of devices and millions of services in the
cloud). Proposed in the early 2010s, Segment Routing (SR) architecture helps face these
challenging demands, and it is currently being adopted and deployed. SR architecture is based
on the concept of source routing and has interesting scalability properties, as it dramatically
reduces the amount of state information to be configured in the core nodes to support complex
services. SR architecture was first implemented with the MPLS data plane.
Segment routing is a new technology developed by Cisco Systems and its partners to forward
traffic more efficiently than in traditional MPLS networks. It is mainly targeted at service
providers, data centers, metropolitan-area networks, and large enterprises that use WAN.
Segment routing can be implemented on top of OSPF, IS-IS, MPLS, and IPv6 configurations
with little to no changes.
IV
Table of Content
DEDICATION ................................................................................................................................................ II
ACKNOWLEDGMENTS ............................................................................................................................. III
TABLE OF CONTENT..................................................................................................................................V
LIST OF FIGURES .................................................................................................................................... VIII
LIST OF TABLES......................................................................................................................................... IX
LIST OF ABBREVIATIONS ......................................................................................................................... X
CHAPTER 1 ..................................................................................................................................................... I
GENERAL INTRODUCTION ....................................................................................................................... I
CHAPTER 2 .................................................................................................................................................... 6
NETWORK FUNDAMENTAL AND ROUTING PROTOCOLS ................................................................ 6
V
2.3.1 ROUTING METRICS .................................................................................................................. 22
2.3.2 TYPES OF ROUTING ................................................................................................................. 23
2.3.2.1 STATIC ROUTING ............................................................................................................. 23
2.3.2.2 DEFAULT ROUTING ........................................................................................................ 23
2.3.2.3 DYNAMIC ROUTING ........................................................................................................ 23
VI
3.6.1 SR POLICY ................................................................................................................................... 44
3.6.1.1 EXPLICIT PATHS .............................................................................................................. 44
3.6.1.2 DYNAMIC PATHS.............................................................................................................. 44
3.6.2 SR TE VS RSVP-TE ..................................................................................................................... 45
3.6.3 PCE CONTROLLER ................................................................................................................... 45
3.6.3.1 MAIN COMPONENTS OF THE PCE CONTROLLER ................................................. 46
3.6.3.2 PCEP MESSAGES .............................................................................................................. 47
CHAPTER 4 .................................................................................................................................................. 48
METHODOLOGY: EVE-NG, CISCO IOS XR, TOPOLOGY, SIMULATION AND RESULTS ............ 48
CHAPTER 5 .................................................................................................................................................. 67
CONCLUSION AND FUTURE WORK...................................................................................................... 67
REFERENCES ............................................................................................................................................. 69
APPENDIX: NETWORK CONFIGURATION .......................................................................................... 72
VII
List of Figures
VIII
List of tables
IX
List of Abbreviations
Abbreviation Description
AD Administrative Distance
AS Autonomous System
C Customer Router
DR Designated Router
X
EIGRP Enhanced Interior Gateway Routing Protocol
Exp Experimental
GB Gigabyte
IP Internet Protocol
XI
LDP Label Distribution Protocol
P Provider Router
XII
PCC Path Computation Client
RD Route-Distinguisher
RT Route-Target
SP Service Provider
SR Segment Routing
XIII
SRTE Segment Routing Traffic Engineering
TE Traffic Engineering
XIV
1. Chapter 1
General Introduction
CHAPTER 1 INTRODUCTION
Introduction
In this project, we introduce the layers in traditional IP-based networks and the routing method,
also we will explain a new technology called Segment-Routing, this technology has been
grown in the last few years, and it will enhance the efficiency of the service provider networks
which are using the technology of Multi-Protocol Label Switching (MPLS).
MPLS is an emerging technology that plays an important role in next-generation service
provider networks,
MPLS classic Label Distribution Protocol (LDP) and Resource Reservation Protocol - Traffic
Engineering (RSVP-TE) control plane was too complex and lacked scalability. Operators were
complaining about the lack of size, functionality, and complexity inherent in the classical
MPLS control plane, the MPLS data plane was mature and very well deployed. For these
reasons, was to implement SR at the MPLS data plane is necessary.
2
CHAPTER 1 INTRODUCTION
Excepted outcomes
The main goal of this project is to describe new Technology called Segment routing (SR) used
especially in the service provider networks. The possible outcomes are the simulation of the
Service Provider network using Segment Routing in the Core, which shows the performance
of SR. The simulated data will be presented in a graphical form. Each graph will be plotted
from the simulated data and will focus on the capabilities of the SR and the source routing
technique. This presentation will make the benefits of the SR easier and more informal to the
reader.
Research methodology
The scientific methodology used in this type of research will combine theoretical research and
empirical research (simulation) to improve the practical knowledge that distinguishes us as
engineers. This type of research is based on defining new network technology and proving the
3
CHAPTER 1 INTRODUCTION
impact of this technology on the Service Provider networks. EVE-NG has been selected for
this purpose in terms of simulation, and the network design employed in this project complies
with Cisco Systems, Inc. requirements. The following steps are a part of this methodology:
• Simulation design.
• Implementation of simulation.
• Segment Routing.
• Path Computation Element.
• MPLS Layer 3 VPN.
• Verifying simulation results.
4
CHAPTER 1 INTRODUCTION
Documentation Outline
The layout of the documentation comprises of five chapters to cover fundamental concepts of
the technologies used, methodology method and case study and a brief conclusion as follows:
• Chapter 2 Provides the overview of OSI Model covering the layers, functions, and the
protocols. It also introduces the Routing Protocols used in the Service Provider core
network, its advantages and disadvantages, and details of how it works.
• Chapter 3 introduces the concept of the MPLS. The Segment Routing technology,
architecture and operation. It also gives a comparative comparison Between the legacy
MPLS control plane and SR-MPLS.
• Chapter 4 illustrate the empirical study part of the project.
• Chapter 5 present the conclusion of the project as well as any suggestion for future work.
5
2. Chapter 2
6
CHAPTER 2 Network Fundamentals and Routing Protocols
2.1 Introduction
Twenty years ago, people communicated mostly on a local level because communicating with
people far away was complicated and expensive, the majority of voice contact was conducted
over the phone or in person. In contrast, most written messages were sent via the postal service,
and one-way video was aired on television. The far distance reach and the reduced cost of
communication through the Internet have changed how businesses deal with their customers,
how people share information and resources, and how friends and families stay close to each
other.
TCP/IP model and reference model (OSI model) are the two networking models that network
engineers define for use in communications. Both were created in the 1970s when network
communication was in its infancy, over the time technology has evolved and the need for
communications between long distances and different countries has increased, so routing
protocols have been invented to facilitate the process of sending data.
The rules of communication are also known as protocols. Some of the protocols required for
communication to occur include the presence of:
Not all communications have the same agreed-upon protocols. For example, an important legal
letter can require a signature and response from the recipient, but personal letters need no such
acknowledgment.
7
CHAPTER 2 Network Fundamentals and Routing Protocols
People are unaware of many of the rules they follow while communicating because they are
ingrained in language and culture. The tone of voice, pausing between thoughts, and polite ways
to interrupt are just a few examples of implicit rules that humans follow.
The following internal elements affect the length of time allotted for successful
communication:
8
CHAPTER 2 Network Fundamentals and Routing Protocols
❖ The message's format, including how much information should be included in each
segment.
❖ The manner in which intermediary devices exchange information regarding the route to
the destination.
❖ How update messages are handled between intermediary devices.
❖ The procedure to start and stop communications between hosts.
The authors of the protocols might be writing them for a specific company that will own the
protocol. The protocol is treated like copyright and can be licensed to other companies to use,
some protocols are created for public usage at no cost and are considered open-source
protocols, while proprietary protocols are those controlled by a firm and not for public use.
➢ Hypertext Transfer Protocol (HTTP): HTTP is a common protocol that governs the way
that a web server and a web client interact. HTTP defines the content and formatting of the
requests and responses exchanged between the client and server. Both the client and the web
server software implement HTTP as part of the application. The HTTP protocol relies on other
protocols to govern how the messages are transported between client and server.
➢ Transport protocol: Transmission Control Protocol (TCP) is the transport protocol that
manages the individual conversations between web servers and web clients. TCP divides the
HTTP messages into smaller pieces, called segments, to be sent to the destination client. It is
also responsible for controlling the size and rate at which messages are exchanged between the
server and the client.
9
CHAPTER 2 Network Fundamentals and Routing Protocols
➢ Internetwork protocol: The most common internetwork protocol is Internet Protocol (IP). IP
is responsible for taking the formatted segments from TCP, encapsulating them into packets,
assigning the appropriate addresses, and selecting the best path to the destination host.
➢ Network Access protocols: Network Access protocols describe two primary functions: data-
link management and the physical transmission of data on the media. Data-link management
protocols take the packets from IP and format them to be transmitted over the media. The
standards and protocols for the physical media govern how the signals are sent over the media
and how they are interpreted by the receiving clients. Transceivers on the network interface
cards implement the appropriate standards for the media that is being used [2].
So, network communication protocols state what tasks must be completed, not how to complete
them. This is what enables different types of devices, such as telephones and computers, to use
the same network infrastructure to communicate. Each device has its technology, but it can
interact with different devices at the network level, on Apple, Microsoft, and Linux, the
operating systems must find a way to present data to others using TCP/IP, but each operating
system will have its way to do it [1].
10
CHAPTER 2 Network Fundamentals and Routing Protocols
❖ Defines common terms that describe the network functions to those working in the industry
and allow greater understanding and cooperation.
❖ Segments the process to allow technologies performing one function to evolve
independently of technologies performing other functions. For example, advancing
technologies of wireless media is not dependent on advances in routers.
❖ Fosters competition because products from different vendors can work together.
❖ Provides a common language to describe networking functions and capabilities.
❖ Assists in protocol design, because protocols that operate at a specific layer have defined
information that they act upon and a defined interface to the layers above and below [3].
11
CHAPTER 2 Network Fundamentals and Routing Protocols
Each layer adds control information at each step. The generic term for data at each level is
protocol data unit (PDU), but a PDU is different at each layer. For example, a PDU at the
internetwork layer is different from the PDU at the transport layer, because layer data has been
added to the transport layer data. The different names for PDUs at each layer are listed in Table
2.2.
12
CHAPTER 2 Network Fundamentals and Routing Protocols
Figure 2.2 depicts these steps as an encapsulated message travels down the TCP/IP model on
the source and is on the way to the destination for decapsulation.
As designed, the communication process begins at the application layer of the source, and data
is passed down to each lower layer to be encapsulated with supporting data until it reaches the
physical layer and is put out on the media. When the data arrives at the destination, it is passed
back up through layers and decapsulated by each layer. Each layer provides data services to
the layer directly above by preparing information coming down the model or going up. Table
2-3 briefly describes each layer of the OSI model.
13
CHAPTER 2 Network Fundamentals and Routing Protocols
14
CHAPTER 2 Network Fundamentals and Routing Protocols
In the OSI model, information is passed from one layer to the next, starting at the application
layer on the transmitting host and proceeding down the hierarchy to the physical layer, then
passing over the communications channel to the destination host, where the information
proceeds back up the hierarchy, ending at the application layer [5].
15
CHAPTER 2 Network Fundamentals and Routing Protocols
Most applications, such as web browsers or e-mail clients, incorporate the functionality of the
OSI Layers 5, 6, and 7. A comparison of the OSI and TCP/IP model is shown in figure 2.5
Most TCP/IP application layer protocols were developed before the emergence of personal
computers, GUIs, and multimedia objects.
16
CHAPTER 2 Network Fundamentals and Routing Protocols
❖ Coding and conversion of application layer data to ensure that data from the source
device can be interpreted by the destination device.
❖ Compression of the data in a manner that can be decompressed by the destination device.
❖ Encryption of the data for transmission and decryption of data upon receipt by the
destination.
Presentation layer implementations are not typically associated with a particular protocol stack.
The standards for video and graphics are examples. Some well-known standards for video
include QuickTime and Motion Picture Experts Group (MPEG). QuickTime is an Apple
computer specification for video and audio, and MPEG is a standard for video compression
and coding.
The session layer communicates between service requestors and providers. Certain
mechanisms help control communication sessions. These mechanisms help in establishing,
maintaining synchronization, and managing dialogue between the communicating entities.
Within the layering arrangements of the OSI network architecture, the session layer responds
to service requests from the presentation layer and issues service requests to the transport layer.
Thus, the main aim of the session layer is to manage and synchronize conversation between
two different applications and avoid any premature loss of data stream.
➢ Management: So many layers and so many applications and protocols can be confusing
especially for the system itself. Session layer manages the order of the operation in case more
than one party is attempting a critical operation at the same time. Opening and closing a
connection or session between end-user applications is also the role of this layer.
17
CHAPTER 2 Network Fundamentals and Routing Protocols
➢ Authentication: After a request for a connection is made and the address of the sender has
been recognized, it is important to identify the source of the request and find out if it is a
legitimate one.
in simple words, this is a process of verification of the endpoint from where the request was
made.
• Authorization: After authentication comes to the authorization, after the verification of your
identity you must receive the permit to establish a session, and this is the simple process that
most probably is the simplest function of the entire model.
The failed attempts of communication by the upper layers are fixed by this layer by re-
establishing the connection.
Flow control manages data transmission between devices so that the transmitting device does
not send more data than the receiving device can process. Multiplexing enables data from
several applications to be transmitted onto a single physical link. Virtual circuits are
established, maintained, and terminated by the transport layer. Error checking involves creating
various mechanisms for detecting transmission errors, while error recovery involves acting,
such as requesting that data be retransmitted, to resolve any errors that occur.
18
CHAPTER 2 Network Fundamentals and Routing Protocols
TCP can recognize duplicate messages and will discard them appropriately. If the sending
computer is transmitting too fast for the receiving computer, TCP can employ flow control
mechanisms to slow data transfer.
It can also communicate delivery information to the upper-layer protocols and applications it
supports. All these characteristics make TCP an end-to-end reliable transport protocol.
- User Datagram Protocol (UDP) is a simple, connectionless protocol, it has the advantage of
providing low-overhead data delivery. The segments of communication in UDP are called
datagrams. UDP sends datagrams as “best effort”. Applications that use UDP include:-
• Domain Name System (DNS).
• Video streaming.
• Voice over IP (VoIP).
Network layer protocols, such as the widely used IP, are rules and instructions that devices use
to enable sharing of upper-layer information between hosts. When the hosts are in different
networks, additional routing protocols are used to choose routes between networks.
Network layer protocols specify the addressing and packaging of a transport layer PDU and
describe how the PDU is to be carried with minimum overhead.
19
CHAPTER 2 Network Fundamentals and Routing Protocols
IP requires each sending and receiving device to have a unique IP address. Devices in IP
networks that have IP addresses are called hosts. The IP address of the sending host is known
as the source IP address, and the IP address of the receiving host is referred to as the destination
IP address.
➢ Encapsulation
Each PDU sent between networks needs to be identified with source and destination IP
addresses in an IP header. The IP header contains the address information and some other bits
that identify the PDU as a network layer PDU. This process of adding information is called
encapsulation. When an OSI Layer 4 PDU has been encapsulated at the network layer, it is
referred to as a packet.
20
CHAPTER 2 Network Fundamentals and Routing Protocols
➢ Decapsulation
An IP packet arrives at a router’s network interface encapsulated in a Layer 2 frame on the
physical OSI layer. The router’s network interface card (NIC) accepts the packet, removes the
Layer 2 encapsulation data, and sends the packet up to the network layer. The process of
removing encapsulation data at different layers is referred to as decapsulation. Encapsulation
and decapsulation occur at all layers of the OSI model. As a packet travels from network to
network to its destination, there can be several instances in which Layers 1 and 2 are
encapsulated and decapsulated by routers. The network layer only decapsulates the IP packet
at the final destination after examining the destination addresses and determining that the
journey is over. The IP packet is no longer useful, so it is discarded by the destination host.
When the IP packet is decapsulated, the information in the packet is handed up to the upper
layers for delivery and processing.
To transfer this data across the local media, the data link layer repackages it into frames and
controls the frames access to the media. Because an indescribable number of physical media
exist, a wide variety of data link layer protocols define different types of frames and different
methods of controlling access to the media.
Some types of frames and data link layer services support communications for LANs and the
others support communications across WANs. Some frame types are used on a specific type of
media, while the others can be used on multiple types of media. So, generalizing the functions
of the data link layer is not an easy task.
Data link layer provides many different types of data link and physical technologies, including
some of the logical topologies. Finally, Ethernet is presented as an example for the physical
and data link layers.
21
CHAPTER 2 Network Fundamentals and Routing Protocols
comes down to the physical layer contains a string of bits representing application,
presentation, session, transport and network information. These bits are arranged in the logical
order required by the specific protocols and applications that use them. These bits must travel
over a physical medium such as a glass fiber-optic cable, or wirelessly through the air. The
physical medium is capable of conducting a signal in the form of voltage, light, or radio waves
from one device to another. It is possible that the media will be shared by traffic from many
protocols and subjected to physical distortions along the way. Part of the physical layer design
is to minimize these effects of overhead and interference.
For some protocols these metrics are static, and it means that their value cannot be changed,
and some other routing protocols uses the dynamic metrics, and it means that their value can
be assigned by the system administrator the most common metric values are given below.
▪ Hop count.
▪ Delay.
▪ Bandwidth.
▪ Load.
▪ Reliability.
22
CHAPTER 2 Network Fundamentals and Routing Protocols
23
CHAPTER 2 Network Fundamentals and Routing Protocols
static routing, dynamic routing enables routers to select paths according to real-time logical
network layout changes.
24
CHAPTER 2 Network Fundamentals and Routing Protocols
Several OSPF packet types are involved in these functions, the Below table 2.4 shows
the packet types of OSPF protocol.
2.4.2.1 Advantages
▪ Open Short Path First is easily scalable, meaning with the very little number of issues,
we can scale it to use in a very big network.
▪ It has full support for subnets.
▪ Use of Hello Packets.
▪ It can route packets based on their type of service field.
2.4.2.2 Disadvantages
▪ It is a processor-intensive protocol to use. Because it maintains more than one copy of
routing information, it consumes more memory.
▪ It is a more complex protocol to understand and learn compared to other Internet
Protocols [9].
25
CHAPTER 2 Network Fundamentals and Routing Protocols
Once the LSDB is made it is used to calculate the shortest path to subnets networks using an
algorithm known as Shortest Path First (SPF) which was developed by Edsger W Dijkstra.
OSPF creates 3 tables:
▪ Routing Table (Forwarding database): It contains currently working best paths that
will be used to forward traffic between two neighbors.
▪ Neighbor Table (Adjacency database): This contains all discovered OSPF neighbors.
▪ Topology Table (Link state database): This one contains the entire road map of the
network. This road map includes all the available OSPF routers and keeps calculated
data about best and alternative paths.
26
CHAPTER 2 Network Fundamentals and Routing Protocols
▪ Backup Designated Router (BDR): Is the router that becomes the DR when the existing
DR fail. In the OSPF network, the BDR is given second-highest priority (the DR is given
first-highest priority). A new election is held to select a new BDR when the BDR turns
into a DR.
▪ Area Border Routers (ABR): Routers located on the borders of each Area connect to
more than one OSPF area are called ABR Routers. They are responsible for summarizing
IP addresses of each area and suppressing updates among areas to prevent fault
containment.
▪ Autonomous System Boundary Router (ASBR): Is a router that has interfaces
connected to one or more OSPF areas, like the ABR, the difference with an ASBR is that
it also connects to other routing systems such as BGP, EIGRP, Internet, and others. An
ASBR router normally advertises routes from other routing systems into the OSPF AS to
which it belongs.
27
CHAPTER 2 Network Fundamentals and Routing Protocols
have detailed information about network topology outside of its area, there are five types of
OSPF areas:
29
CHAPTER 2 Network Fundamentals and Routing Protocols
2.5.1 Specification
▪ MPLS layer 3 VPNs offer an extremely scalable VPN architecture that can scale to
thousands of customer sites and VPNs.
▪ MPLS layer 3 VPNs allow any-to-any connectivity for enterprise customer sites, and can be
configured to support quality of service (QoS) for real-time and business applications.
▪ MPLS traffic engineering (an associated technology) allows service providers to optimally
utilize network bandwidth, and support tight service-level agreements (SLA) with fast
failover (fast reroute) and guaranteed bandwidth.
▪ VPN route target communities—A VPN route target community is a list of all members of a
layer 3 VPN community. You must configure the VPN route targets for each layer 3 VPN
community member.
▪ Multiprotocol BGP peering of VPN community PE routers—Multiprotocol BGP propagates
VRF reachability information to all members of a VPN community. You must configure
Multiprotocol BGP peering in all PE routers within a VPN community.
▪ MPLS forwarding—MPLS transports all traffic between all VPN community members across
a VPN enterprise or service provider network [12].
30
CHAPTER 2 Network Fundamentals and Routing Protocols
Route Distinguisher (RD): when assigning customer to VRF has the same local network
subnet with another customer local network, RD isolated customers local networks routing
information and don’t make overlapping happen.
Route Target (RT): Whereas route distinguishers are used to maintain uniqueness among
identical routes in different VRFs, route targets can be used to share routes among them. We
can apply route targets to a VRF to control the import and export of routes among it and other
VRFs [13].
Multiprotocol BGP is also widely deployed in case of MPLS layer 3 VPN, to exchange VPN
labels learned for the routes from the customer sites over the MPLS network, in order to
distinguish between different customer sites when the traffic from the other customer sites
comes to the provider edge router (PE) for routing [14].
31
3. Chapter 3
32
CHAPTER 3 MPLS Control Planes and SR
3.1 Introduction
Before Multiprotocol Label Switching (MPLS), the most popular WAN protocols were ATM
and frame relay. Cost-effective WAN networks were built to carry various protocols, with the
popularity of the Internet, IP became the most popular protocol, IP was everywhere and VPNs
were created over these WAN protocols, customers leased ATM links and frame relay links or
used leased lines and built their own private network over them because the routers of the
provider supplied a layer 2 service to the layer 3 customer routers, the separation, and the
isolation between different customer networks were guaranteed.
MPLS has been around for several years. It is a popular networking technology that labels
attached to packets to forward them through the network.
The MPLS labels are advertised between routers so that they can build a label-to-label mapping,
these labels are attached to the IP packets, enabling the routers to forward the traffic by looking
at the label and not the destination IP address, the packets are forwarded by label switching
instead of IP switching.
After a while when traditional MPLS became widespread in the backbone network of service
providers, some problems had to arise that they were going to encounter, and indeed the
problem of LDP protocol not being able to create sessions has arisen.
So, Segment Routing emerged as a new technology in 2013 and made a huge impact on service
providers, large-scale web providers, and large organizations. As a significant catalyst for
transformation, all the networks must depend on Segment Routing in the future, it is no wonder
that dependence on it is growing exponentially.
33
CHAPTER 3 MPLS Control Planes and SR
MPLS is used not only to facilitate higher speed requirements but to develop advanced and
augmented applications and services over the existing network infrastructure.
• Cost
network resources can be easily shared in MPLS since it is a layer 3 technology. Besides
that, all the customers data can be routed privately using MPLS.
• Scalability
Scalability is an option made easily available in MPLS. It is much easier compared to
other methods. According to the needs, the MPLS can be scaled up and down. Even if
there is a requirement for thousands of sites.
34
CHAPTER 3 MPLS Control Planes and SR
• Efficiency
MPLS offers much higher quality connections without packet loss and jitter. Using it
along with VoIP may lead to increased efficiency. Meaning that a consistent
performance can be achieved.
• Reliability
There exists variety of features which makes MPLS reliable. Since MPLS uses labels
for forwarding packets, it can be assured that the packets will be delivered to the right
destination. Moreover, it is possible to assign network traffic according to the priority.
• Bandwidth
MPLS allows multiple traffics to pass through the network. And different parts of
bandwidth can be assigned to various data types. Which means that bandwidth is
optimally utilized. Through all these means, the bandwidth is potentially increased [15].
1. Label: The label field is of 20 bits, hence the label could take values from 0 to 220-1, or
1,048,575. However, the first 16 label values i.e., from 0 to 15 are exempted from normal
use as they have a special meaning.
2. Experimental (Exp): The three bits are reserved as experimental bits. They are used for
Quality of Service (QoS).
3. Bottom of Stack (BoS): A network packet can have more than one MPLS labels which
are stacked one over another. To ensure which MPLS label is at the bottom of stack we
have a BoS field which is of 1 bit. The bit is high (ie value 1) only when that particular
label is at the bottom of the stack otherwise its value remains 0.
4. Time to Live (TTL): The last 8 bits are used for Time to Live (TTL). This TTL has the
same function as the TTL present in the IP header. Its value is simply decreased by 1 at
35
CHAPTER 3 MPLS Control Planes and SR
each hop. The job of TTL is to avoid the packet being stuck in the network by discarding
the packet if its value becomes zero [16].
▪ Ingress LSR:
These routers are present at the beginning of the MPLS network. Their job is to receive an
unlabelled IP packet and push the label on top of it.
▪ Egress LSR:
These routers are present at the end of the MPLS network. Their job is to pop the label from
the incoming packet and forward the packet as an IP packet.
▪ Intermediate LSR:
These routers are present in between the above two routers. Their job is to receive the labelled
packet, swap the label of the packet and forward it to the next hop. They are responsible for the
MPLS forwarding of the packet.
36
CHAPTER 3 MPLS Control Planes and SR
▪ Routing Table:
Routing information is exchanged between LSRs using a routing protocol, such as IGRP,
EIGRP, IS-IS, OSPF, or BGP [16].
▪ Pushing:
Is the act of applying an additional label to a packet. The packet might already have a label on
it since MPLS can support multiple stacked labels. This pushing is normally done at the ingress
LER, at the edge of the network. The LER requires a mapping so that it knows what data to put
on an LSP. It might also be performed in the core of a network where multiple LSPs are
aggregated or encapsulated inside another LSP.
▪ Popping:
Is the act of removing the outermost label from the packet. One or more labels might still be
inside. Popping is normally done at the egress LER. LERs must do an additional lookup to
decide how to forward the encapsulated packet. Penultimate routers will pop the label but will
only forward the unencapsulated packet according to the lookup table for the LSP.
▪ Swapping:
Is the act of replacing a label. The inside of the labelled packet is never inspected. The swapping
is done by LSRs. The EXP field is used to define how the packet should be queued, and the
TTL is decremented. If TTL equals zero, the packet will be discarded [18].
37
CHAPTER 3 MPLS Control Planes and SR
The packets belonging to the same FEC have the same label. But some packets do not belong
to the same FEC and forwarding mechanism due to a different EXP value. Ingress LSRs decides
which packet belongs to which FEC and this is done only once in the MPLS network.
▪ Provider (P):
This device connects to PE routers and other P routers. It has a simple job, it switches packets
based on their labels or removes the labels, another common name for this device is the LSR
(Label Switch Router) or transit router.
Also is used to establish MPLS transport LSPs when traffic engineering is not required. It
establishes LSPs that follow the existing IP routing table, and is particularly well suited for
establishing a full mesh of LSPs between all of the routers on the network.
38
CHAPTER 3 MPLS Control Planes and SR
Let's make an example describing the challenges that we would face on our networks
nowadays.
For example, if we have Core network runs MPLS as an underlay and MPLS Layer 3 VPN as
an overlay as showing in the figure (3.4) below and in the left-hand side we have a metro-
ethernet network and it uses Ethernet as an underlay and MPLS Layer 2 VPN as an overlay and
then on the right-hand side we have datacenter which actually where we offer the services for
the customers where we use IP as underlay and Virtual Extensible LAN (VXLAN) as an
overlay. So the network splitting to three different parts or three different domains and it seems
that also we might have different engineers taking care of different parts of the network, this is
challenge because the end user which is on the left-hand side needs a service from the
datacenter, and now the packet will move from one domain to another one which means there
will always some sort of encapsulation and decapsulation, and we need to make MPLS L2VPN
39
CHAPTER 3 MPLS Control Planes and SR
talk with MPLS L3VPN and then talk to VXLAN and visa-versa, so its complex if you think
of end-to-end provisioning, and all this process is manually today at least.
With Segment Routing all the process complete using a unified fabric instead of using all the
previous technologies in each domain as showing in the Figure (3.5) below, so we just have
one protocol that we need to manage in case we have any issues and if we need to troubleshoot
the network.
Segment Routing (SR) is a protocol designed to forward data packets on a network based on
source routes, it divides a network path into several segments and assigns a segment ID (SID)
to each segment and forwarding node. The segments and nodes are sequentially arranged into
a segment list to form a forwarding path [21].
40
CHAPTER 3 MPLS Control Planes and SR
Segment Routing is divided into two types based on the forwarding plane. Segment Routing
MPLS (SR-MPLS) is based on the MPLS forwarding plane, whereas Segment Routing IPv6
(SRv6) is based on the IPv6 forwarding plane.
Each router (node) and each link (adjacency) have an associated segment identifier (SID), Node
segment identifiers are globally unique and represent the shortest path to a router as determined
by the IGP, The network administrator allocates a node ID to each router from a reserved block,
On the other hand, an adjacency segment ID is locally significant and represents a specific
adjacency, such as egress interface, to a neighbouring router, Routers automatically generate
adjacency identifiers outside of the reserved block of node IDs. In an MPLS network, a segment
identifier is encoded as an MPLS label stack entry, Segment IDs direct the data along a
specified path, there are two kinds of segment IDS:
• Prefix SID— A segment ID that contains an IP address prefix calculated by an IGP in the
service provider core network, Prefix SIDs are globally unique, A node SID is a special form
of prefix SID that contains the loopback address of the node as the prefix, it is advertised as
an index into the node specific SR Global Block or SRGB.
• Adjacency SID— A segment ID that contains an advertising router’s adjacency to a
neighbour, an adjacency SID is a link between two routers, since the adjacency SID is
relative to a specific router, it is locally unique [22].
41
CHAPTER 3 MPLS Control Planes and SR
balance between network-based distributed intelligence, such as automatic link and node
protection, and controller-based centralized intelligence, such as traffic optimization. It can
provide strict network performance guarantees, efficient use of network resources, and high
scalability for application-based transactions. The network uses minimal state information to
meet these requirements. Segment routing can be easily integrated with a controller-based SDN
architecture. The following figure illustrates a sample SDN scenario where the controller
performs centralized optimization, including bandwidth admission control. In this scenario, the
controller has a complete picture of the network topology and flows. A router can request a
path to a destination with certain characteristics, for example, delay, bandwidth, diversity. The
controller computes an optimal path and returns the corresponding segment list, such as an
MPLS label stack, to the requesting router. At that point, the router can inject traffic with the
segment list without any additional signalling in the network.
In addition, segment lists allow complete network virtualization without adding any application
state to the network, The state is encoded in the packet as a list of segments, Because the
network only maintains a segment state, it can support a large number and a higher frequency
of transaction-based application requests without creating any burden on the network.
➢ Simplified
When applied to the MPLS data plane, Segment Routing offers the ability to tunnel MPLS
services (L3VPN, L2VPN) from an ingress provider edge to an egress provider edge without
any other protocol than an IGP (IS-IS or OSPF), also a Simpler operation without separate
protocols for label distribution (for example, no LDP or RSVP), and no complex LDP or IGP
synchronization to troubleshoot.
Better utilization of installed infrastructure, for lower capital expenditures (CapEx), with
ECMP-aware shortest path forwarding (using node segment IDs).
42
CHAPTER 3 MPLS Control Planes and SR
provides backup path within time less than 50 msec, using a pre-computed backup path that
can provide full coverage and does not have any topology dependencies.
➢ SR Microloop Avoidance
Microloops cause packet loss during network convergence (Link up or Link down events) due
to difference processing speed between different kinds of routers and many other reasons.
Segment Routing Microloop Avoidance automatically prevents such loops to occur by forcing
traffic to use the backup path using a temporary Segment list till all routers converge correctly.
Segment Routing simplifies MPLS-enabled data center designs using Border Gateway Protocol
(BGP) RFC 3107 - IPv4 labelled unicast among Top-of-the-Rack/Leaf/Spine switches, BGP
distributes the node segment ID, equivalent to IGP node SID, and Any node within the topology
allocates the same BGP segment for the same switch.
➢ Scalable
Avoid thousands of labels in LDP database, thousands of MPLS Traffic Engineering LSPs in
the network, and thousands of tunnels to configure.
Controllers and orchestration platforms can interact with Segment Routing traffic engineering
for centralized optimization, such as WAN optimization.
Network changes such as congestion can trigger an application to optimize (recompute) the
placement of segment routing traffic engineering tunnels.
Segment Routing tunnels are dynamically programmed onto the network from an orchestrator
using southbound protocols like PCE [23].
43
CHAPTER 3 MPLS Control Planes and SR
Segment Routing Traffic Engineering (SR-TE), meanwhile, offers a whole new level of
simplicity, scalability and flexibility by incorporating a combination of centralized control and
optimization with distributed intelligence. This solution translates the intent of the operator
(delay, bandwidth) into “SR policy” [24].
3.6.1 SR Policy
An SR Policy is fundamentally a list of segments. A set of candidate pathways made up of one
or more segment lists, or SID lists, make up an SR-MPLS TE policy. Each SID list specifies a
direct route from source to destination, instructing a device to use this route rather than the
shortest path determined by an IGP. An ordered list of segments linked to an SR-MPLS TE
Policy is added to the header of a packet that has been directed there so that other network
nodes can carry out the instructions contained within [25].
Each SR-Policy has preference number, if two policies have same {color, endpoint} but
different preferences, the policy with the highest preference is selected.
The candidate paths are the core of the SR-TE policy, there are two main candidate paths that
can be used when specifying an SR-TE Policy:
44
CHAPTER 3 MPLS Control Planes and SR
3.6.2 SR TE VS RSVP-TE
Traffic engineering in the past was very complex and required a soft protocol like RSVP to
constantly update and calculate the end-to-end path, making MPLS-TE very painful and slow,
SR-TE provides a simple, automated, and scalable architecture to engineer traffic flows in a
network, and the Table (3.1) below shows the Comparison between SR-TE and RSVP-TE
tunnels [27].
45
CHAPTER 3 MPLS Control Planes and SR
A key benefit of the controllers is their ability to provide bandwidth reservation, which segment
routing by itself doesn’t do well. By moving path state information from transit routers into the
packet, segment routing eliminates the need for protocols such as LDP and RSVP-TE, which
distribute path information across the network. RSVP-TE provides a mechanism for bandwidth
reservation, so eliminating it can be problematic in networks where bandwidth reservation is
currently implemented.
SR controllers solve this problem because they can monitor the entire network topology and its
traffic flows in real time. They use this data to determine the explicit paths that packets should
take through the network, and they can also allocate bandwidth to those paths. After the paths
are calculated and link bandwidth is allocated, the controller adds this information to its
database. The controller factors in existing bandwidth needs as it computes new paths or before
it reroutes traffic due to congestion or other dynamic network conditions [28].
• Analyze
• Optimize
• Automate
46
CHAPTER 3 MPLS Control Planes and SR
➢ PCEP
PCE Protocol (PCEP) is the standard protocol used between PCE and PCC for
communication, and it’s a simple TCP-based protocol.
47
4. Chapter 4
48
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
4.1 Introduction
The empirical study is based on experimentation or direct observation, i.e., evidence. This kind
of project study is often conducted to answer specific queries or test hypotheses. This chapter
will be presented the results of the project empirical study.
4.2 Simulation
The term simulation is the imitation of the operation of a real-world process or system over
time. As defined here, simulation is creating an abstract representation of an existing or
proposed system to identify and understand the controlling factors of the system and predict its
behavior. The simulation process facilitates the prediction of the weakness and strengths before
real-time implementation of the model that has been simulated.
In this project, EVE-NG was run on a server with the following specifications:
Some EVE-NG appliances were added and integrated into the lab as follows:
• Cisco IOS XR
The majority of Cisco routers and switches use the multitasking operating system known as
IOS (Internetwork Operating System). The command-line interface for IOS contains a set
quantity of multi-word commands. Routing, switching, internetworking, and other features
offered by Cisco equipment are configured using this operating system, and the EVE-NG
marketplace offers a large number of Cisco router images.
49
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
Appliance Usage
The default username and password are (admin). There is no default configuration present.
Appliance Requirements
RAM: 16GB
CPU: 4 VCPU
Kernel-based Virtual Machine (KVM) needs to be enabled on the simulation machine or in the
EVE-NG VM.
IOS Version Used
Cisco IOS XR Software, Version 6.5.1
• Cisco IOSV 15.2
Appliance Usage
There is no default password and enable password. There is no default configuration present.
Appliance Requirements
RAM: 512 MB
KVM needs to be enabled on the simulation machine or in the EVE-NG VM.
IOS version Used
Cisco IOS Software, Version 15.2(4)S7.
Windows Secure Copy (WinSCP): is a free and an open-source SFTP, FTP,
WebDAV, S3, and SCP client for Windows. File transfers between local and
distant computers are its primary use. In addition, WinSCP provides scripting
and fundamental file manager features [31].
MobaXterm: is a terminal emulator toolbox for remote computing, it provides
all the important remote network tools such as (SSH, Telnet, RDP, and Local
Terminal session) to Windows OS Computers in a single Platform [35].
50
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
51
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
52
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
To accomplish the project's goal, there are six main principal tasks to achieve an SR-MPLS,
and SR-TE in the core network up and running. Also, an MPLS L3 VPN separates the
customer's traffic and fulfils end-to-end connectivity between the sites with no conflict between
the 2 customers' IPs:
• Enterprise
• Site-A
o 2-Customer Edge routers* (CE)
o 2- Customer End Devices* (C)
• Site-B
o 2-Customer Edge routers* (CE)
o 2- Customer End Devices* (C)
*Note: All the above Service Provider routers were used in this simulation are Cisco IOS XR
routers and all the Customer routers were used are Cisco IOSV as described in (section 4.2.1)
53
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
4.3.2.4 IP Addressing
IP addresses for all the devices that were used in this simulation Devices are as follows:
Table 4.1: IP Address of the Routers
54
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
After that we need to configure segment routing global block range inside provider routers,
then we have to activate segment routing in OSPF process, by using segment routing command
under the OSPF area, and finally set segment routing index for routers under the OSPF area
with prefix-sid index (router order on MPLS).
Now to verify the segment routing and OSPF configuration in the provider routers use show
mpls forwarding and command show ospf (OSPF process ID) and show ospf (OSPF process
ID) neighbor (see Figure 4.2 and 4.3), and for more detailed information using command
show running configuration (see Appendix 1.1).
55
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
56
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
When configuring a VRF, you must first build it in PEs routers before attaching it to the
interface that was in communication with the customer's router, or in our case, the sub-interface
that was in communication with the WAN switch that was directly connected to two customers.
Inside the VRF, we have set a route distinguisher to isolated customers local networks, and also
export and import route targets to avoid conflict routing between customers sites, each customer
has their special route targets, whether this be on site (A) or site (B).
To verification from VRFs and it attached RD and route targets on PEs (PE1 & PE2), we can
use command show VRF all (see Figure 4.4), and to view the interfaces that attached to VRFs
we use show ipv4 interface brief (see Figure 4.5) and to see VRF configuration in sequence
use command show running configuration | begin vrf.
Note: VRF CUST-1 was chosen for customer (1), and VRF CUST-2 chosen for customer (2).
The OSPF process ID which chosen for Customer (1) is 10, and Customer (2) is 20, and each
sub-interface that connect to CE routers has engaged on OSPF process assigned to it.
57
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
The command used to verify OSPF process ID for each customer is show route vrf (name)
ospf (see Figure 4.6 and 4.7), and to see OSPF configuration in detail use command show
running configuration.see (Appendix 1.2)
Note: mBGP protocol is used to connect customer sites with each other.
for mBGP we have to create mBGP process with private Autonomous System number (AS)
that value must be from range (64512 - 65535), this number acts as ID for mBGP process, same
like OSPF process ID, after creating mBGP process, enabling vpnv4 addressing is critical for
creating the L3VPN tunnel, also some parameters are important to exist in mBGP like BGP
router ID and neighbors ID with their remote AS number, and then we include the VRFs into
mBGP, and inside the VRF below mBGP we attached route distinguisher and then adding to
them ipv4 addressing; so we can redistribute the OSPF process that we assigned to customers
inside PEs.
To verify and show the mBGP configuration in correct order and how VRFs attached to, use
command show running configuration (see Appendix 1.2), and to see how mBGP neighbors
state established between PE routers use show BGP neighbors command (see Figure 4.8).
58
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
59
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
to verification of routes that distributed between PE routers use show route vrf (name)
command (see Figure 4.9).
60
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
After enabling the MPLS traffic engineering SR-TE policies will be configured under the
Segment routing traffic engineering mode, and for our project Explicit Paths method chosen to
apply the Policy and that’s by configure the segment routing list that identify SID labels of each
router as we want the traffic to go until we reach the destination. Then configure the policy and
under the policy specify the color and the color should pointing to the end point or the
destination IPv4 address, and the last step is creating candidate path and tell the router which
list should be applied under the policy.
To verify and show the SR-TE policies and SR lists use show segment-routing traffic-eng
policy name (Policy name) Command.
Note: the SR policy name for PE1 is (100) and the traffic will go through R4, R5 to reach PE2
as the SID lists in the Figure (4.10).
61
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
Note: the SR policy name for PE2 is (200) and the traffic will go through R3, R4 to reach PE1
as the SID lists in the Figure (4.11).
To verify the PCE configuration and check all the topology use Show pce ipv4 topology brief
Command.
62
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
As we see in the Figure (4.12) the PCE detect all the PCCs in the network, from the PCC point
of view we can know who is the PCE in the network using show running-config | include pce
Command as the Figure (4.13).
63
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
In our case, customer 1 site A pc (C1-A) reaching pc on site B (C1-B), this can be verified by
pinging from C1-A to C1-B, and doing traceroute to find out the path of the packet which
passed through (see Figure 4.14).
Now to verify how customer 2 sites reach each other, pinging and traceroute will be using from
C2-B to C2-A (see Figure 4.15).
Finally, to check the SR-TE policy is working properly, we have to do traceroute from PE1
loopback interface to PE2 loopback interface and versa vice (see Figure 4.16 and 4.17).
64
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
4.6 Results
This pilot study proves when any service provider companies want to enhance the efficiency
of their core MPLS network, and reduce the complicated of troubleshooting, they have to use
SR-MPLS instead of traditional MPLS that depends on LDP labels; because LDP protocol is
slower in failover; where it takes more time to change the path if there is any link goes down
(about 3 minutes), and will add more configuration which will be hard to work with it. Also,
the control plane information on SR-MPLS is inside the IGP protocol header, whereas
traditional MPLS using LDP or RSVP-TE with IGP protocol as a control plane, on the labels
distributions side SR-MPLS labels are allocated to adjacent links and SR nodes, devices do not
occupy a large number of labels, reducing the device resources usage, traditional MPLS the
number of labels increases with the number of tunnels, which increases device resources usage.
65
CHAPTER 4 Methodology: EVE-NG, Cisco IOS-XR, Topology, Simulation and Results
In traffic engineering, SR-TE considered the easiest and the simplest method; because SR-TE
does not need many configurations, opposite traditional MPLS which makes traffic engineering
so hard to implement.
When talking about the future, a technology that have integration with software-defined
network concept is needed, SR-MPLS supports traditional and SDN networks, whereas
traditional MPLS only works with traditional networks.
66
5. Chapter 5
67
Conclusion and Future work
CHAPTER 5
5.1 Conclusion
In this thesis, Segment Routing architecture was studied and the main objective of this project
was to design, implement, and verify the SR technology that runs on SP Network. L3 VPN was
used in order to simulate a real environment by connecting two different customers through the
Service provider and showing how the Service provider separates between the networks of the
customers. SR-TE was Configured in the backbone network to prove the simplicity of applying
Traffic Engineering using Segment Routing Policies and the SDN Technology was also applied
using the PCE Controller.
SR is a method of forwarding packets on the network based on the source routing paradigm.
The source chooses a path and encodes it in the packet header as an ordered list of segments
and the primary benefit of the Segment routing is its ability to simplify the network and reduce
resource utilization, making it easier to manage and operate your network.
Based on the simulation, the result was that SR provides better, more efficient, and easier
solutions than the classic MPLS control planes. The key reason that routers of service
providers and large enterprise companies use SR as a Control plane of MPLS is that makes the
network more simple, scalable, and intelligent.
Additionally, the combination of the PCE Controller with SR-TE lessens network sluggishness
and centralizes network management, which lowers the overhead on the other routers.
68
Conclusion and Future work
CHAPTER 5
References
Dye, M., McDonald, R., & Rufi, A. (2007). Network fundamentals, CCNA
[1]
exploration companion guide.
[5] Applications and services - computer networking 1. Google Sites: Sign-in. (n.d.).
Retrieved August 17, 2022, from
https://sites.google.com/site/tvcc110111mb198065/applications-and-services
Hartpence, B. (2011). Packet Guide to Routing and Switching: Exploring the
[6]
Network Layer. " O'Reilly Media, Inc."
[7] Computer Network Routing: Types of routing - javatpoint. www.javatpoint.com.
(n.d.). Retrieved August 20, 2022, from https://www.javatpoint.com/computer-
network-routing
Open shortest path first (OSPF) - set 2. GeeksforGeeks. Retrieved August 22,
[8]
2022, from https://origin.geeksforgeeks.org/open-shortest-path-first-ospf-set-2/
[9] What is OSPF?: How it works?: Implementation and application of OSPF.
EDUCBA. (2022, July 2). Retrieved August 22, 2022, from
https://www.educba.com/what-is-ospf/
[10] Moy, J. T. (1998). OSPF: anatomy of an Internet routing protocol. Addison-
Wesley Professional.
[12] MPLS layer 3 VPN configuration guide for cisco ASR 9000 series routers, IOS
XR release 7.1.x - implementing MPLS Layer 3 vpns [CISCO ASR 9000 series
aggregation services routers]. Cisco. (2021, June 8). Retrieved September 11,
2022, from
HTTPS://WWW.CISCO.COM/C/EN/US/TD/DOCS/ROUTERS/ASR9000/SOFTWARE/ASR9
K-R7-1/LXVPN/CONFIGURATION/GUIDE/B-L3VPN-CG-ASR9000-71X/B-L3VPN-CG-
ASR9000-71X_CHAPTER_010.HTML
[13] Route Distinguishers and route targets. Route Distinguishers and Route Targets
- PacketLife.net. (n.d.). Retrieved September 12, 2022, from
https://packetlife.net/blog/2013/jun/10/route-distinguishers-and-route-targets/
69
Conclusion and Future work
CHAPTER 5
[14] MBGP. Cisco Community. (2019, March 1). Retrieved September 17, 2022, from
https://community.cisco.com/t5/networking-knowledge-base/mBGP/ta-
p/3115725
[15] Alwayn, V. (2001). Advanced MPLS design and implementation. Cisco press.
Segment routing. Segment Routing. (n.d.). Retrieved September 24, 2022, from
[21]
https://www.segment-routing.net/
[22] Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B., Litkowski, S., & Shakir, R.
(2018). Segment routing architecture (No. rfc8402).
[24] UserManual.wiki. (n.d.). Day one: Configuring segment routing with Junos.
UserManual.wiki. Retrieved September 24, 2022, from
https://usermanual.wiki/m/2d9b5a601009aabcdf75a92551e24389b2f97dcc3aab
9cbc5de9364d62632071
Filsfils, C., Michielsen, K., Clad François, & Voyer, D. (2019). Segment routing
[25]
Part II - Traffic Engineering. Cisco Systems.
[26] Cisco. (2021, November 24). Segment routing configuration guide for cisco ASR
9000 series routers, IOS XR release 6.4.x - configure SR-te policies [Cisco IOS
XR Software Release 6.4]. Cisco. Retrieved September 25, 2022, from
https://www.cisco.com/c/en/us/td/docs/routers/asr9000/software/asr9k-r6-
4/segment-routing/configuration/guide/b-segment-routing-cg-asr9000-64x/b-
segment-routing-cg-asr9000-64x_chapter_0111.html
70
Conclusion and Future work
CHAPTER 5
Faisal. (2016, March 23). Need a quick recipe for SDN in wan? mix BGP-LS
with PCE. Need A Quick Recipe For SDN In WAN? Mix BGP-LS With PCE -.
[34] Retrieved September 22, 2022, from
HTTPS://TELCOCLOUDBRIDGE.COM/BLOG/NEED-QUICK-RECIPE-SDN-WAN-MIX-
BGP-LS-PCE/
MobaXterm. (n.d.). Retrieved October 10, 2022, from
[35]
HTTPS://MOBAXTERM.MOBATEK.NET/
71
Appendix: Network Configuration
P3
RP/0/RP0/CPU0:P3#show run
Building configuration...
hostname P3
username admin
group root-lr
group cisco-support
secret 5 $1$wuqn$UwxypHt6.ggDI0.6buKfa.
call-home
service active
contact smart-licensing
profile CiscoTAC-1
active
interface Loopback0
interface MgmtEth0/RP0/CPU0/0
shutdown
interface GigabitEthernet0/0/0/0
72
!
interface GigabitEthernet0/0/0/1
interface GigabitEthernet0/0/0/2
interface GigabitEthernet0/0/0/3
shutdown
router ospf 1
distribute link-state
router-id 3.3.3.3
segment-routing mpls
network point-to-point
area 0
segment-routing mpls
interface Loopback0
prefix-sid index 3
interface GigabitEthernet0/0/0/0
network point-to-point
interface GigabitEthernet0/0/0/1
network point-to-point
interface GigabitEthernet0/0/0/2
network point-to-point
mpls traffic-eng
73
!
segment-routing
traffic-eng
pcc
precedence 100
report-all
redundancy pcc-centric
end
--------------------------------------------------------------------------
P4
RP/0/RP0/CPU0:P4#show run
Building configuration...
hostname P4
username admin
group root-lr
group cisco-support
secret 5 $1$wuqn$UwxypHt6.ggDI0.6buKfa.
call-home
74
service active
contact smart-licensing
profile CiscoTAC-1
active
interface Loopback0
interface MgmtEth0/RP0/CPU0/0
shutdown
interface GigabitEthernet0/0/0/0
interface GigabitEthernet0/0/0/1
interface GigabitEthernet0/0/0/2
interface GigabitEthernet0/0/0/3
router ospf 1
distribute link-state
router-id 4.4.4.4
segment-routing mpls
network point-to-point
75
segment-routing forwarding mpls
area 0
segment-routing mpls
interface Loopback0
prefix-sid index 4
interface GigabitEthernet0/0/0/0
network point-to-point
interface GigabitEthernet0/0/0/1
network point-to-point
interface GigabitEthernet0/0/0/2
network point-to-point
interface GigabitEthernet0/0/0/3
network point-to-point
segment-routing
traffic-eng
pcc
precedence 100
report-all
redundancy pcc-centric
end
76
P5
RP/0/RP0/CPU0:PCE-P5#show run
Building configuration...
hostname PCE-P5
username admin
group root-lr
group cisco-support
secret 5 $1$wuqn$UwxypHt6.ggDI0.6buKfa.
call-home
service active
contact smart-licensing
profile CiscoTAC-1
active
interface Loopback0
interface MgmtEth0/RP0/CPU0/0
shutdown
interface GigabitEthernet0/0/0/0
interface GigabitEthernet0/0/0/1
interface GigabitEthernet0/0/0/3
router ospf 1
distribute link-state
router-id 5.5.5.5
segment-routing mpls
network point-to-point
area 0
segment-routing mpls
interface Loopback0
prefix-sid index 5
interface GigabitEthernet0/0/0/0
network point-to-point
interface GigabitEthernet0/0/0/1
network point-to-point
interface GigabitEthernet0/0/0/2
network point-to-point
interface GigabitEthernet0/0/0/3
network point-to-point
78
segment-routing
traffic-eng
pcc
precedence 100
report-all
redundancy pcc-centric
end
--------------------------------------------------------------------------
79
1.2 L3VPN + SR-TE (Provider Edge Routers)
PE-1
RP/0/RP0/CPU0:PE1#show run
Building configuration...
hostname PE1
username admin
group root-lr
group cisco-support
secret 5 $1$wuqn$UwxypHt6.ggDI0.6buKfa.
vrf CUST-1
rd 172.16.1.0:1
import route-target
172.16.1.4:1
export route-target
172.16.1.0:1
vrf CUST-2
rd 172.16.2.0:2
import route-target
172.16.2.4:2
export route-target
172.16.2.0:2
80
icmp ipv4 source vrf
call-home
service active
contact smart-licensing
profile CiscoTAC-1
active
interface Loopback0
interface MgmtEth0/RP0/CPU0/0
shutdown
interface GigabitEthernet0/0/0/0.1
vrf CUST-1
encapsulation dot1q 10
interface GigabitEthernet0/0/0/0.2
vrf CUST-2
encapsulation dot1q 20
interface GigabitEthernet0/0/0/1
interface GigabitEthernet0/0/0/2
81
interface GigabitEthernet0/0/0/3
router ospf 1
distribute link-state
router-id 1.1.1.1
segment-routing mpls
network point-to-point
area 0
segment-routing mpls
interface Loopback0
prefix-sid index 1
interface GigabitEthernet0/0/0/1
network point-to-point
interface GigabitEthernet0/0/0/2
network point-to-point
interface GigabitEthernet0/0/0/3
network point-to-point
router ospf 10
vrf CUST-1
router-id 1.1.1.1
82
area 0
interface GigabitEthernet0/0/0/0.1
router ospf 20
vrf CUST-2
router-id 1.1.1.1
area 0
interface GigabitEthernet0/0/0/0.2
neighbor 2.2.2.2
remote-as 65010
update-source Loopback0
vrf CUST-1
rd 172.16.1.0:1
vrf CUST-2
rd 172.16.2.0:2
83
mpls oam
mpls traffic-eng
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/1
segment-list SR-TE
policy 100
candidate-paths
preference 100
pcc
precedence 100
report-all
redundancy pcc-centric
end
84
PE-2
RP/0/RP0/CPU0:PE2#show run
Building configuration...
hostname PE2
username admin
group root-lr
group cisco-support
secret 5 $1$wuqn$UwxypHt6.ggDI0.6buKfa.
vrf CUST-1
rd 172.16.1.4:1
import route-target
172.16.1.0:1
export route-target
172.16.1.4:1
vrf CUST-2
rd 172.16.2.4:2
import route-target
172.16.2.0:2
export route-target
172.16.2.4:2
85
icmp ipv4 source vrf
call-home
service active
contact smart-licensing
profile CiscoTAC-1
active
interface Loopback0
interface MgmtEth0/RP0/CPU0/0
shutdown
interface GigabitEthernet0/0/0/0.1
vrf CUST-1
encapsulation dot1q 10
interface GigabitEthernet0/0/0/0.2
vrf CUST-2
encapsulation dot1q 20
interface GigabitEthernet0/0/0/1
interface GigabitEthernet0/0/0/2
interface GigabitEthernet0/0/0/3
86
ipv4 address 172.16.23.2 255.255.255.248
router ospf 1
distribute link-state
router-id 2.2.2.2
segment-routing mpls
network point-to-point
area 0
segment-routing mpls
interface Loopback0
prefix-sid index 2
interface GigabitEthernet0/0/0/1
network point-to-point
interface GigabitEthernet0/0/0/2
network point-to-point
interface GigabitEthernet0/0/0/3
network point-to-point
router ospf 10
vrf CUST-1
router-id 2.2.2.2
area 0
interface GigabitEthernet0/0/0/0.1
87
router ospf 20
vrf CUST-2
router-id 2.2.2.2
area 0
interface GigabitEthernet0/0/0/0.2
neighbor 1.1.1.1
remote-as 65010
update-source Loopback0
vrf CUST-1
rd 172.16.1.4:1
vrf CUST-2
rd 172.16.2.4:2
mpls oam
mpls traffic-eng
88
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/1
metric 1
segment-list SR-TE-PE2
policy 200
candidate-paths
preference 100
pcc
precedence 100
report-all
redundancy pcc-centric
end
89
1.3 MPLS Provider Switches
WAN-SW-6
Switch#show run
Building configuration...
version 15.2
no service password-encryption
service compress-config
hostname Switch
boot-start-marker
boot-end-marker
no aaa new-model
no ipv6 cef
ip cef
90
interface Ethernet0/0
interface Ethernet0/1
interface Ethernet0/2
interface Ethernet0/3
ip forward-protocol nd
no ip http server
control-plane
line con 0
logging synchronous
line aux 0
line vty 0 4
login
end
91
logging synchronous
line aux 0
line vty 0 4
login
end
--------------------------------------------------------------------------
WAN-SW-7
Switch#show run
Building configuration...
version 15.2
no service password-encryption
service compress-config
hostname Switch
boot-start-marker
boot-end-marker
no aaa new-model
92
no ipv6 cef
ip cef
interface Ethernet0/0
interface Ethernet0/1
interface Ethernet0/2
interface Ethernet0/3
ip forward-protocol nd
no ip http server
control-plane
93
line
candidate-paths
con 0
logging
preference
synchronous
100
lineexplicit
aux 0 segment-list SR-TE-PE2
line! vty 0 4
login
!
!!
!!
! pcc
end
source-address ipv4 2.2.2.2
- -pce
- - -address
- - - - - - ipv4
- - - -100.100.100.100
-----------------------------------------------------------
precedence 100
report-all
redundancy pcc-centric
end
--------------------------------------------------------------------------
94
1.4 Provider PCE Controller Router
PCE
RP/0/RP0/CPU0:PCE_Controller#show run
Building configuration...
hostname PCE_Controller
username admin
group root-lr
group cisco-support
secret 5 $1$wuqn$UwxypHt6.ggDI0.6buKfa.
pce
call-home
service active
contact smart-licensing
profile CiscoTAC-1
active
interface Loopback0
interface MgmtEth0/RP0/CPU0/0
shutdown
interface GigabitEthernet0/0/0/0
95
interface GigabitEthernet0/0/0/1
shutdown
interface GigabitEthernet0/0/0/2
shutdown
interface GigabitEthernet0/0/0/3
shutdown
router ospf 1
distribute link-state
router-id 100.100.100.100
network point-to-point
area 0
segment-routing mpls
interface Loopback0
interface GigabitEthernet0/0/0/0
network point-to-point
mpls traffic-eng
segment-routing
traffic-eng
end
96