Skip to main content

Introduction to Segment Routing

Segment Routing

Introduction
Before we proceed to understand the segment routing technology, we must understand that SR is a technology and every technology has made for a solution.
So, first, we need to understand the solution and its need.
All the Service providers are facing following issues with current infrastructure:
1.    A lot of manual configuration for reserving the path in the SP Core network for a different type of traffics.
2.    Lack of application-level visibility which leads to classifying network based on only IP, Port and QoS classification.
3.    Lack of application integration with the network.
4.    No centralized control over the path based on different type of services.
5.    No end-to-end visibility from Data Center to an End user, which leads to sub-optimal paths for application in different domains.
6.    The separate signaling protocol is required for MPLS control plane signaling
7.    Separate protocol for labeling and separate for Traffic Engineering.
8.    A lot of unnecessary tunnel-te configuration on the PE router.
9.    No dynamic way of creating Inter-Domain Tunnels.
For the resolution of all the above-mentioned issues, many vendors come out with a different type of solutions.
In general, you need a routing which can support application integration as well as application visibility.

 For achieving this solution, we need 3 main components:
1.    Controller (Featured based on the type of controller)
2.    Application
3.    Segment Routing
Controller plays a major role here because this device should help the application to talk to network and engineer network according to the application requirement.
How this works?
The application needs to be integrated with a controller using whatever API (I am not a programmer, so I am not going in details of application integration). After that network needs to be integrated with a controller so that it can share the network information (Link State, Link Cost and other contracts based on configuration and controller capabilities).
Now, Customer is developing an application in their data center and integrating with a central controller. The application will feed the network requirement in the controller, for ex. Voice and Video application require the low latency path, a file transfer application requires the high available bandwidth path. The application can talk to a controller and feed their requirement into controller regarding network requirement, based on the inputs provided by an application, a controller can find a path inside a network.
The information about the path (which controller has selected) will be pushed into the actual packet at the Source, So now when a packet arrives in the SP Core Network, it will have the path details already in packet and based on this information packets will be forwarded in a network and reach the destination.
Due to this reason Segment Routing also known as Source Routing, because the routing path is already decided at the source itself, Core Network routers don’t need to calculate the path.
For achieving this solution, we need to have Segment Routing in place, because SR is the only technology which can support Source Routing as well as can be pushed into packet header at the source.
This is all about the solution, we haven’t talked about Technology yet, so it’s all at a high level and needs to have all three components in place (Application, Controller and SR), but this does not mean we cannot use SR individually.
SR can work individually to replace LDP and RSVP with additional features.
Now, let’s talk about SR as a Technology.
Segment Routing
Before we go to details of Segment Routing, we should know that MPLS is a data plane protocol and we need a control plane protocol to set up the control plane for MPLS traffic.
Currently, we are using LDP & RSVP (for transport labels) MP-BGP and T-LDP (for service label) as a control plane protocol for MPLS traffic, SR is one of the control plane protocol only for MPLS which is having a wide range of features.
SR can replace LDP and RSVP (Not 100%) from the network for transport label distribution and traffic engineering, remember SR can replace LDP, not T-LDP.
Segment Routing is also known as Source Routing, it is using SID (Segment ID’s) as a label to transport packet with the network.
SR as of now is used for Transport Label distribution as well as it supports Traffic Engineering.
SR can support Existing MPLS infrastructure with wide applications, SR is designed with SDN in mind.
Different type of Segments:
Ø Global Segment
Ø Local Segment
Ø Prefix Segment
Ø Adjacency Segment
Ø BGP Prefix Segment
Global and Local Segment:
Global Segments are the globally unique value in the SR domain and derived from the combination of SRGB (Segment Routing Global Block) and global index value.
Any Node in the SR domain can interpret this segment and it is propagated with Existing IGP.
SR does not have any additional signaling protocol, it works on existing IGP for signaling.
The global index value and global segment value is signaled in an entire domain with the help of IGP (OSPF or ISIS) with additional TLV’s.
Local Segments are locally generated and locally significant value, generated by IGP and an only local router can interpret this, this Segments can be treated as a locally assigned MPLS label.
IGP Segment:
There are two types of IGP Segments:
1.    Prefix Segment
2.    Adjacency Segment.

Prefix Segment:
Prefix Segment is global segment value, which is globally unique in SR domain, this value is derived from the manually configured index value + SRGB or you can define this value as Absolute label value.
Prefix Segments are distributed by the IGP (OSPF or ISIS) in additional TLV or Opaque LSA.
This value is used to reach the node in the SR domain using the IGP Shortest path.
Adjacency Segment:
These are a local segment, locally generated and locally significant, these segments are allocated by IGP from Dynamic LSD (Label Switch Database),
Local Segments are also advertised by IGP only and will be used for traffic steering using SR (explained in detail later).
SRGB (Segment Routing Global Block):
SRGB (Segment Routing Global Block) is the range of labels reserved for Segment Routing from the LSD (Label Switch Database).
SRGB is used to allocate the Global Segment or Prefix Segment using the configured index value, this range is reserved for segment routing and will not be used by other MPLS protocols for assigning labels.
SRGB Range may differ from each vendor, here we are going to talk about Cisco IOS XR Example for Examining SRGB:
Cisco IOS XR have SRGB range starts from 16000 to 23999 by default, we can change this range with an explicit configuration of SRGB, SRGB can be configured at the global level or per IGP instance level, IGP instance level configuration will take precedence over the global SRGB configuration.
Cisco IOS XR is having some reserved Ranges:
0 – 15
Reserved for Special Purpose
16-15999
Reserved for Static label allocation
16000 - 23999
Reserved for SRGB
24000 – H/W supports
Dynamic Label Switch Database

Dynamic LSD (Label Switch Database) is responsible for allocating labels for all the MPLS clients like LDP, RSVP, MP-BGP or T-LDP.
IOS XR 6.1.X onwards Cisco has reserved the SRGB Range, even you enable SR or not, which will allow you to enable SR without reloading of the router.
When IOS XR boots up, it reserves the SRGB and after that whichever MPLS application registers with LSD, it will allocate labels to it from 24000, it works from first come first serve basis.

Thanks,
Suraj Soni
CCIEx3 #39003 (R&S, Sec & SP)

Comments

  1. I really like your blogs do you have more technical features you can share with US THANKS for your work

    ReplyDelete
  2. can you share your eve labs without the config Thanks

    ReplyDelete

Post a Comment

Popular posts from this blog

Flex VPN

Cisco FLEX VPN with IKEv2 Large customers deploying IPSec VPN over IP networks are faced with high complexity and high cost of deploying multiple types of VPN to meet different types of connectivity requirements. Customers often have to learn different types of VPNs to manage and operate different types of network. And once a technology is selected for a deployment, migrating or adding functionality to enhance the VPN is often avoided. FlexVPN was created to simplify the deployment of VPNs, to address the complexity of multiple solutions, and as a unified ecosystem to cover all types of VPN: remote access, teleworker, site to site, mobility, managed security services, and others. Cisco IOS FlexVPN Features and Benefits: Cisco IOS FlexVPN is a unified VPN solution and provides the following benefits: ●     Scalability:  IKEv2 provides scalability feature with the help of IKEv2 Proposal, in which we can use multiple integrity, encryption & DH group types,

VRF Aware IPSEC Site-to-Site VPN

VRF [Virtual Routing & Forwarding] Virtual Private Networks (VPNs) provide a secure way for customers to share bandwidth over an ISP backbone network. A VPN is a collection of sites sharing a common routing table. A customer site is connected to the service provider network by one or more interfaces, and the service provider associates each interface with a VPN routing table. A VPN routing table is called a  VPN routing/forwarding (VRF) table. About VRF-lite VRF-lite is a feature that enables a service provider to support two or more VPNs, where IP addresses can be overlapped among the VPNs. VRF-lite uses input interfaces to distinguish routes for different VPNs and forms virtual packet-forwarding tables by associating one or more Layer 3 interfaces with each VRF. Interfaces in a VRF can be either physical, such as Ethernet ports, or logical, such as VLAN SVIs, but a Layer 3 interface cannot belong to more than one VRF at any time. Terminology ·        ivrf  :