The past and present of SRv6

The past and present of SRv6

In the early days of network development, there were many competing technologies, and multiple network technologies coexisted, such as X.25, FR (Frame Relay), ATM network and the well-known IP network. Although these technologies cannot be interconnected, they all have their own place, and the most mainstream technologies are ATM and IP.

ATM Technology

Originated from the idea of ​​fast packet switching proposed by Bell Laboratories in the United States in 1983 and asynchronous time division switching proposed by Cent of France Telecom in 1984, it uses fixed-length (188-byte) cells to transmit data and a connection-oriented approach to communicate, which can provide better service quality. This technology can meet the reliability and manageability requirements of telecommunication networks, and therefore has been widely used in telecommunication networks in the early days of the rise of network technology. The ATM standard was proposed by ITU-T, and the ATM Forum, composed of ITU-T, telecommunication manufacturers, and telecommunication operators, promotes ATM standardization work. It has a strong official color and the standardization process is slower than that of IP standards.

IP Technology

A connectionless communication that provides best-effort services, has the flexibility of hop-by-hop path finding, and the message length is not fixed. IP technology uses the "longest match" method for forwarding. Each router needs to parse the IP packet to find the destination IP address and make independent routing decisions for the data packet based on this information. Its transmission reliability needs to be achieved with the help of high-level protocols. This technology adheres to the concept of sharing and openness, and has therefore been widely used in computer networks. The IP standard is mainly promoted by the non-governmental organization IETF, and is promoted rapidly based on the principles of simplicity, practicality, effectiveness, and continuous improvement.

In short, ATM is based on switches, establishes virtual circuits through signaling technology, and emphasizes network intelligence. IP is based on routers, supports datagram addressing through routing technology, and emphasizes terminal intelligence.

Although ATM and IP have many differences, they both have their own application scenarios. In recent years, with the explosive growth of the Internet, the marginal benefits of economy and efficiency have decreased as the scale of the network has further increased. How to more effectively build a larger-scale network has become a realistic problem. In addition, as computer networks develop towards broadband and intelligence, network services also show burst characteristics. Network communication places more emphasis on efficiency and versatility. With the development of multimedia communication, high-speed data communication is required, while ensuring the QoS of communication and being able to transmit multimedia content such as voice and images. Driven by new demands, the original network technology is stretched: ATM technology is complex, has poor versatility, high management costs, and low efficiency (large packet header overhead), and the best-effort IP network is gradually no longer able to adapt to the development of the network. Adding a switching structure to the router network is an effective solution to the problem.

High-quality IP technology

As the requirements for QoS in IP networks increase, new technologies emerge, which integrate the QoS concept of ATM into IP technology, such as LANE (Local Area Network Emulation), IPoA (IP over ATM), and TAG Switch.

MPLS technology emerged in 1996. MPLS built a "2.5 layer" technology between the second layer and the third layer, which is equivalent to directly attaching a label to the third layer IP packet. It supports multiple third-layer networks such as IPv4 and IPv6, and is compatible with multiple second-layer links such as ATM and Ethernet. MPLS integrates the VCI (virtual channel identifier) ​​and VPI (virtual path identifier) ​​of the ATM network, and has the flexibility of IP routing and the simplicity of label switching, building a label-based communication channel on top of IP.

MPLS forwards data based on fixed-length 32-bit labels. IP forwards data based on the longest prefix match. The former has higher forwarding efficiency and can better support TE (implementing the application and distribution of MPLS TE path labels based on RSVP-TE, achieving resource guarantee and explicit path forwarding), virtual private networks (using MPLS labels to identify virtual private networks to achieve service isolation) and FRR (can meet the requirements of 50ms telecom-class protection switching). MPLS is gradually being applied to various network scenarios such as IP backbone networks, metropolitan area networks, and mobile bearer networks, and can support multi-service convergence bearer.

Figure 1: MPLS label

MPLS forwarding functions are separated from routing functions. Only path and policy selection is implemented at the network edge. Labels are assigned to IP packets entering the network, and packet forwarding is achieved through label switching. When the packet is switched to the edge of the MPLS network, the encapsulation is unwrapped and it continues to reach the destination according to the routing method of the IP packet.

The MPLS network includes two types of network elements: edge routers (LERs) and label switching routers (LSRs). The former completes the entry and exit process of IP packets. The latter completes high-speed switching. A unidirectional high-speed LSP is constructed between the ingress node LER and the egress node LER. When the IP data packet arrives at the LER, it is mapped to an LSP and labeled according to the MPLS forwarding equivalence class (FEC) concept. The label information base maps each FEC to the label of the next hop of the LSP. If the layer 2 link of the next hop is ATM, MPLS will use the VCI in the ATM VCC as the label.

Figure 2: MPLS packet

MPLS has a variety of label distribution protocols, such as LDP (Label Distribution Protocol), RSVP-TE, and MP-BGP (Multiprotocol Border Gateway Protocol). LDP itself does not maintain state, and forwarding is connectionless. MPLS uses label forwarding. The forwarding principle can be simplified as label push, label swap, and label pop.

MPLS implements traffic engineering and provides connection-oriented services. In the development of MPLS technology, different improved technologies have been derived to meet different business needs, such as MPLS-TP, SR-MPLS, PWE3, etc. MPLS solves the problems of route isolation, large-scale networking, traffic engineering, and IP-based bearer of telecom-class services, ensuring network reliability and service bearer quality.

Emerging services such as 5G and smart cities require the network to have capabilities such as programmability and the Internet of Things, and to be able to provide service-level QoE measurement and perception functions. In the context of new business requirements, MPLS problems are gradually exposed. First, the protocol state is complex. MPLS solves the problem by superimposing new technologies on the basis of the original IP technology. MPLS distributes labels by adding the LDP protocol on the basis of the IGP protocol, and implements traffic engineering by adding the RSVP-TE protocol. The new technology increases the complexity of the protocol. Secondly, in the MPLS system, each device can only see its own status, which is a distributed technology. In addition, the RSVP-TE protocol signaling is very complex, requiring the maintenance of a huge amount of link information and a large number of interactive messages to maintain the connection state. The complexity increases exponentially with the increase in the number of nodes. In this context, SR technology was born.

The birth of SR technology

In 1977, Car A. Sunshine published the paper "Source routing in computer networks", which first proposed source routing technology. Segment Routing technology, which emerged in 2013, draws on the idea of ​​source routing, divides the message forwarding path into segments, and uses SID (Segment Identifier) ​​to identify them, and uniformly inserts segment information at the source node of the path. Intermediate nodes only forward according to the segment information carried in the message, and do not perceive or maintain the path status.

SR technology implements label forwarding by extending the SR attribute of the IGP protocol, and realizes all the functions of the LDP protocol; through the centralized RSVP function (centralized control and management), it avoids each node from having to interact a lot through RSVP to maintain the whole network information. In general, SR has three characteristics: source routing; stateless; centralized control.

SR that supports MPLS is called SR-MPLS. SR-MPLS does not change the way MPLS inserts labels into IP packet headers, and also requires network devices to support MPLS label forwarding hop by hop.

Figure 3: SR-MPLS

SRv6

With the emergence of IPv6, SR and IPv6 merged to form SRv6. SRv6 solves the problem of insufficient scalability of traditional MPLS label information, can carry more information, and can uniformly carry multiple network protocols.

SRv6 supports IPv6 data plane and uses 128-bit IPv6 address as SID, integrating all the advantages of SR-MPLS network. At the same time, as one of the native applications of IPv6, SRv6 has better compatibility. SRv6 can realize network programming capabilities with the help of rich 128-bit SID.

Figure 4: SRv6 Packet Header

When establishing cross-domain LSP paths, SRv6 does not require complex route diffusion or dedicated label forwarding plane support, and only requires an IPv6 forwarding plane. At the service level, SRv6 integrates the L2 virtual private network (VPWS, VPLS) and L3 virtual private network (MP-BGP) in the original network through the E virtual private network.

Figure 5: Comparison of MPLS and SRv6 protocol stacks

SRv6 is implemented through the IPv6 routing extension header (SRH). SRv6 does not change the IPv6 message structure and is compatible with all IPv6 devices. SRv6 routing can cross AS domains, and the bearer service can also cross AS domains, which is conducive to simplified network deployment.

SRv6 integrates path and service orchestration capabilities, and can pre-plan specific paths and the function actions of nodes in the path. With the support of network and service orchestrators, SRv6 can realize the ability to pull network paths and define services, and realize cloud-network integration and end-to-end service assurance.

Figure 6: SRH frame structure

SRH key information consists of three parts:

  • Routing Type: The value is 4, indicating that the extended label is Segment Routing Header (SRH);
  • Segment List: network path information;
  • Segment Left (SL) pointer indicates the currently active segment.

The SL and Segment List fields together determine the IPv6 DA information. In SRv6, every time a SRv6 node is passed, the SL field is reduced by 1, and the IPv6 DA is transformed into a pointer to the current SID. Unlike MPLS, the SRv6 packet header retains complete path information and can perform path tracing.

It should be noted that although the SRv6 SID adopts the IPv6 address format, it is not an ordinary IPv6 address. The SRv6 SID generally consists of two parts: Locator and Function. The former can be variable in length, has a positioning function, can be routed and aggregated, and is generally required to be unique within the SRv6 domain (except for Anycast scenarios). After the node is configured with Locator, the system will generate a Locator network segment route and spread it within the SRv6 domain through IGP. Other nodes in the network locate the node through Locator. The Function part can also be divided into an optional parameter segment (Arguments). SRv6 SIDs can be freely combined for path programming, and forwarding paths can be defined according to business needs.

Compared with the three-layer type labels (VPN/BGP/SR) of traditional SR-MPLS, SRv6 has only one IPv6 header, which realizes unified forwarding. Due to the standardization of the SRv6 frame header, it is compatible with the IPv6 devices in the existing network. When the intermediate node does not support the SRv6 function, it can be forwarded according to the IPv6 routing method.

In the cloud data center interconnection scenario, the IP backbone network uses MPLS/SR-MPLS technology, and the data center network usually uses VXLAN technology. The backbone network and the data network use gateway devices to implement mutual mapping between VXLAN and MPLS. SRv6 packets are exactly the same as ordinary IPv6 packets. The intercommunication between SRv6 network nodes only needs to ensure that the IPv6 network between the nodes is reachable. It can be seen that SRv6 blurs the boundary between the backbone network and the data center network.

Figure 7: Application of SRv6 in cloud data center interconnection scenarios

SRv6 only needs to upgrade the service head and tail nodes to a version that supports SRv6 to implement SRv6 traffic engineering. Through BGP4+, IPv6 routes from one domain can be introduced to another domain to carry out cross-domain service deployment. In cross-domain scenarios of large networks, limited aggregate routing table entries can be introduced at the border nodes, reducing the requirements for network device capabilities.

SRv6 has both routing and MPLS forwarding attributes, and has TE and expansion capabilities. It can support future fixed-mobile convergence and achieve unified IP forwarding technology.

Current Status of SRv6 Applications

In the past few years, SRv6 applications have been mainly concentrated on the network side, while large Layer 2 network and cloud network applications have been less common.

There are still some problems in the application of SRv6:

1) SRv6 SID is 128 bits, which is too long, causing transmission efficiency and stack depth problems. Taking a 100GE link as an example, with a 256-byte message and 8-layer SID, the SR-MPLS network link utilization is 89%, while the SRv6 network utilization is only 67%.

2) The rate mismatch between SRv6 and non-SRv6 will cause port congestion and significantly increase latency.

3) The SRv6 packet header is relatively long, which may cause the data packet to exceed the line MTU and be fragmented, resulting in a sharp drop in transmission performance.

4) The SRv6 standard is not yet fully mature. Currently, only the framework (RFC8402) and SRH encapsulation format (RFC8745) have been standardized. The standardization of application scenarios, deployment models/interoperability, network management, protocol extensions, traffic engineering, fast convergence, Draft netpgm (last call/appeal) definition operations, etc. is moderate; the standardization of segment compression, OAM & performance management, service chain, etc. is low. According to the average maturity period of IETF standards of 2-3 years, it will take some time for SRv6 to form a complete standard system.

5) SRv6 places new requirements on ASICs. An SRv6 node in an SR path must perform multiple operations, including reading the SRH, rewriting the IPv6 destination field to the next node in the path, updating pointers, and performing specific node operations (network programming).

6) SRv6 has not yet brought significant incremental value. Currently, SRv6 is mainly used in traditional MPLS L2 VPN/L3 VPN services. SRv6's network programmability features have not yet been widely used.

summary

IPv6 is the basic condition for SRv6 application. With the large-scale deployment of IPv6, the promotion and application of SRv6 technology will also enter the fast lane. We will wait and see how SRv6 will evolve and develop in the future.

<<:  How to promote digital transformation? American communications giant AT&T teaches you a few tricks!

>>:  5G and the Internet of Things: A New Era of Digitalization

Recommend

Five-minute technical talk | HTTP evolution history

Part 01 Protocol Introduction HTTP is the most po...

A thought-provoking report on a major communications failure

Starting at 1:35 a.m. local time on July 2, a lar...

UK government to phase out 2G and 3G mobile networks by 2033

Britain said on the 8th that it will gradually ph...

How have the three major operators been doing in the past nine months?

[[248346]] With China Telecom announcing its oper...

Quick questions and answers: 20 killer questions for computer network interviews

[[414422]] This article is reprinted from the WeC...

Intent-based networking: Closing the network complexity gap

In the past decade, networks have undergone a var...

What is a router in a network? Core functions explained

A router is a core element of internet connectivi...

What are the differences between WAN, LAN, PAN and MAN?

What is the difference between a wide area networ...

5G helps digital transformation of smart railways

In recent years, under the guidance of the "...