Segment Routing v6 Configuration Guide for Cisco 8000 Series Routers, Cisco IOS XR Releases

PDF

Segment Routing v6 Configuration Guide for Cisco 8000 Series Routers, Cisco IOS XR Releases

SRv6-TE explicit BSIDs and remote steering

Want to summarize with AI?

Log in

Explains how explicit BSIDs provide stable policy identification and allow remote nodes to steer traffic into SRv6-TE policies, including associated configuration guidelines and limitations.


SRv6-TE explicit BSIDs and remote steering is a core SRv6 feature that

  • configures a persistent and deterministic binding SID for an SRv6-TE policy,

  • enables Remote BSID Steering, allowing the router to match incoming traffic with a destination address equal to a local policy BSID and steer it into the associated SRv6 TE policy, and

  • ensures that the binding SID remains consistent across reloads and policy reinstalls.

Table 1. Feature History Table

Feature Name

Release

Description

SRv6-TE explicit BSIDs and remote steering

Release 26.1.1

Introduced in this release on: Fixed Systems (8200 [ASIC: Q200, P100], 8700 [ASIC: P100, K100], 8010 [ASIC: A100]); Centralized Systems (8600 [ASIC:Q200], 8400 [ASIC: K100]); Modular Systems (8800 [LC ASIC: Q200, P100])

You can now manually configure a deterministic and persistent binding SID, also known as an explicit BSID, for an SRv6-TE policy. The router also supports remote BSID steering, which allows it to recognize traffic whose destination address matches a local policy BSID and steer the traffic directly into the associated SRv6-TE policy.

Previously, the router allocated SRv6-TE policy binding SIDs dynamically and could change the BSID during reloads or policy reinstallation. This behavior limited deterministic policy stitching and integration with external controllers.

The feature introduces these changes:

CLI:

  • show segment-routing traffic-eng database explicit-bsid srv6 [summary | detail | private]

  • clear segment-routing srv6 sid <address>

  • The enforce keyword is introduced as an explicit option in SR-TE SRv6 submode.

  • The following show commands are updated to display the binding SID behavior:

    • show segment-routing traffic-eng policy

    • show segment-routing srv6 static-endpoint

YANG Data Models:

  • Cisco-IOS-XR-infra-xtc-agent-oper.yang

  • Cisco-IOS-XR-segment-routing-srv6-cfg.yang

(see GitHub, YANG Data Models Navigator)

SRv6-TE binding SID enhancements

The feature enhances SRv6-TE by enabling deterministic binding SID allocation and allowing the router to steer traffic into policies from remote nodes.

The feature consists of two primary components:

  • Explicit BSID (Static BSID) — The router allows you to manually configure a binding SID for an SRv6-TE policy. Previously, the router allocated BSIDs dynamically. Manual configuration ensures that the BSID remains persistent and deterministic, which is critical when an upstream policy uses BSID as a segment.

  • Remote steering — The router can receive a packet whose destination address matches a local SRv6-TE policy BSID and steer the traffic directly into the corresponding policy.

Benefits of SRv6-TE explicit BSIDs and remote steering

  • Hierarchical networking: The router supports policy stitching by steering packets into a single policy, and then forwards them to a midpoint where another policy, identified by its BSID, continues forwarding.

  • Scalability: The feature enables the router to support complex topologies such as transit policies and static network anchors by allowing hosts to use a specific IP address, the BSID, for transport.

  • Service steering: The router enables ABF, PBR, and FlowSpec to steer traffic over SRv6-TE policies.


Guidelines and limitations for SRv6-TE explicit BSIDs and remote steering

Follow these guidelines and take note of the limitations when configuring SRv6-TE explicit BSIDs and remote steering.

Guidelines

  • The router supports 256 explicit BSIDs by default. Increase the explicit SID range in the SID Manager to support more SIDs.

  • Use the uSID F3216 format for explicit BSID and remote steering deployments.

Limitations

  • In Release 26.1.1, the router does not fully support Path MTU for remote steering.

  • The binding-sid command syntax is not backward compatible. Review existing configurations before upgrading.


Configure SRv6-TE explicit BSIDs and remote steering

You can configure SRv6-TE explicit BSIDs and remote steering using these steps.

Procedure

  1. Run the segment-routing srv6 command to configure a static BSID in the SID Manager.

    Example:

    Define the SID in the central SID Manager database and associate it with the specific policy color and endpoint before the SR-TE policy uses an explicit BSID.

    Router(config)# segment-routing
    Router(config-sr)# srv6
    Router(config-sr-srv6)# static
    Router(config-sr-srv6-static)# endpoint
    Router(config-sr-srv6-static-endpoint)# sid fccc:ccc1:1:fe00:: behavior end-ub6-insert-red identification policy color 100 endpoint 1:1::11
    Router(config-sr-srv6-static-endpoint)# commit
  2. Run the binding-SID command for the SR-TE policy to use an explicit BSID.

    The command ensures that if you delete the explicitly configured SID, or if it conflicts with another allocation, the router keeps the policy in a down state and does not allocate a dynamic SID.

    Example:

    Router(config)# segment-routing
    Router(config-sr)# traffic-engineering
    Router(config-sr-te)# policy MY_SRV6_POLICY
    Router(config-sr-te-policy)# srv6
    Router(config-sr-te-policy-srv6)# binding-sid explicit enforce
    Router(config-sr-te-policy-srv6)# commit
    
  3. Run the install-endpoint-node-sid command to enable remote steering for the node.

    The command ensures that the last uSID, the BSID, is not suppressed so that the node can correctly steer traffic received from remote nodes. By default, SR-TE suppresses this behavior.

    Example:

    Router(config-sr-te-policy)# srv6
    Router(config-sr-te-policy-srv6)# install-endpoint-node-sid
    Router(config-sr-te-policy-srv6)# commit
  4. Run the show segment-routing traffic-eng database explicit-bsid srv6 command to verify the summary or detailed information about the explicit BSIDs.

    Example:

    Router# show segment-routing traffic-eng database explicit-bsid srv6 
    Tue Feb 17 05:02:24.088 +00
    
                   Binding SID                   Behavior      Policy (Color,Endpoint)
    -------------------------- -------------------------- ----------------------------
          fc20:253f:11:fe05::    uB6 (PSP/USD Insert.Red)                    50,22::22
    
    Router# show segment-routing traffic-eng database explicit-bsid srv6 private 
    Tue Feb 17 05:02:33.031 +00
    
    SRv6-TE Redistributed BSID database:
    ------------------------------------
    
    Binding SID: fc20:253f:11:fe05::/64 (Last update: Feb 17 05:00:57.924)
      Behavior: uB6 (PSP/USD Insert.Red) (99)
      Policy identifier:
        Color: 50 Endpoint: 22::22 
      Locator ID: 1
      Conflict: No
      Stale: No
      Configured: Yes
      Event history (oldest first):
        Time                    Event
        Feb 17 05:00:57.924     Added (SID Mgr configured: true)
    
    Router# show segment-routing traffic-eng database explicit-bsid srv6 detail 
    Tue Feb 17 05:02:29.593 +00
    
    SRv6-TE Redistributed BSID database:
    ------------------------------------
    
    Binding SID: fc20:253f:11:fe05::/64 (Last update: Feb 17 05:00:57.924)
      Behavior: uB6 (PSP/USD Insert.Red) (99)
      Policy identifier:
        Color: 50 Endpoint: 22::22 
      Locator ID: 1
      Conflict: No
  5. Run the clear segment-routing srv6 sid <address> command to manually clear an explicit SRv6 SID in case of route conflicts.

    Example:

    Router# clear segment-routing srv6 sid fc20:253f:11:fe05:: 
    Tue Feb 17 05:04:09.407 +00
    Router#
  6. Run the show segment-routing traffic-eng policy color command to display the detailed operational status, configuration, and attributes of all SR-TE policies associated with a specific route color.

    In Release 26.1.1, the command is enhanced to include details to verify if a manually assigned BSID is allocated and programmed.

    Example:

    Router(config-sr-te-policy-srv6-expl-enforce)# show segment-routing traffic-eng policy color 105
    Tue Feb 17 05:33:07.117 +00
    
    SR-TE policy database
    ---------------------
    
    Color: 105, End-point: 22::22
      Name: srte_c_105_ep_22::22
      Status:
        Admin: up  Operational: up for 00:00:37 (since Feb 17 05:32:29.986)
      Candidate-paths:
        Preference: 10 (configuration) (active)
          Name: test_policy
          Requested BSID: explicit
          Constraints:
            Protection Type: protected-preferred
            Maximum SID Depth: 13 
          Explicit: segment-list TC1 (valid)
            Weight: 1, Metric Type: TE (IANA PCEP/IGP: 2/2)
              SID[0]: fc20:253f:1::/48
                      Format: f3216
                      LBL:32 LNL:16 FL:0 AL:80
              SID[1]: fc20:253f:2::/48
                      Format: f3216
                      LBL:32 LNL:16 FL:0 AL:80
          SRv6 Information: 
            Locator: loc1
            Binding SID requested: fc20:253f:11:fe05::
            Binding SID behavior: uB6 (PSP/USD Insert.Red)
            Explicit binding SID enforced: Yes
            Install Final Node SID: No
      Attributes:
        Binding SID: fc20:253f:11:fe05::
        Forward Class: Not Configured
        Steering services disabled: no
        Steering BGP disabled: no
        IPv6 caps enable: yes
        Invalidation drop enabled: no
        Max Install Standby Candidate Paths: 0
        Path Type: SRV6
  7. Run the show segment-routing srv6 static-endpoint command to verify the SID Manager view of the explicit BSIDs.

    Example:

    Router# show segment-routing srv6 static-endpoint 
    Tue Feb 17 05:24:01.798 +00
    SID/Prefix                  Behavior          Identification                                    State                                       
    --------------------------  ----------------  --------------------------------------------      --------------------------------------------
    fc20:253f:11:fe05::/64      uB6 (PSP/USD Ins  'srte_c_50_ep_22::22' (50, 22::22)                Allocated - Locator Up