IP Library Granted Patent US 12,556,478
Granted Patent B2
US 12,556,478 · App. 17/962,618 · Granted Feb 17, 2026

BGP segment routing optimization by packing multiple prefixes in an update

Inventors: Anil Dharmshaktu (Gurgaon, IN); Varun Munjal (Gurgaon, IN); Param Preet Dhillon (Gurgaon, IN); Piyush Sharma (Gurgaon, IN)
Assignee: Ciena Corporation
H04L45/741H04L45/02H04L45/748
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,556,478
App. No.
17/962,618
Granted
Feb 17, 2026
Kind
B2
Abstract

Systems and methods for border gateway protocol (BGP) Segment Routing (SR) (BGP-SR) update packing include negotiating with border gateway protocol (BGP) peers for packing BGP-Segment Routing (BGP-SR) updates, receiving a plurality of prefixes for a BGP-SR update message, encoding the plurality of prefixes with associated label information in network layer reachability information (NLRI) of the BGP-SR update message, and transmitting the BGP-SR update message to any of the BGP peers.

Claims (50)

1 . A router comprising circuitry configured to:

negotiate with border gateway protocol (BGP) peers for packing BGP-Segment Routing (BGP-SR) updates,

receive a plurality of prefixes for a BGP-SR update message,

encode the plurality of prefixes with associated label information in network layer reachability information (NLRI) of the BGP-SR update message, wherein the associated label information in the NLRI is utilized to derive a Segment Identifier (SID) for a corresponding prefix of the plurality of prefixes, wherein the BGP-SR update message is a single message for all of the plurality of prefixes each of which has a different SID which is derived from a calculation using the associated label information in the NLRI, and

transmit the BGP-SR update message to any of the BGP peers,

wherein the SID is derived for the corresponding prefix by

determining a label index as a label from the associated label information for the corresponding prefix subtracted by a local or peer segment routing global block (SRGB) start, and

determining the SID as the local SRGB start plus the label index,

wherein the circuitry is further configured to encode in a peer SRGB range sub-TLV attribute of a BGP Prefix-SID TLV of the BGP-SR update message, a peer SRGB start label explicitly identifying a peer SRGB range shared uniformly across multiple BGP peers, wherein the peer SRGB start label is distinct from any locally allocated SRGB start labels or ranges and from any flexible algorithm definitions or identifiers and is explicitly used by receiving BGP peers to derive label indexes for Segment Identifiers.

2 . The router of claim 1 , wherein the plurality of prefixes all share same attributes.

3 . The router of claim 1 , wherein the BGP peers all include a same segment routing global block (SRGB).

4 . The router of claim 1 , wherein any of the BGP peers include a different segment routing global block (SRGB), and wherein the circuitry is further configured to

encode the SRGB of a node performing the transmitting in an attribute.

5 . The router of claim 1 , wherein the circuitry is further configured to

responsive to any BGP peers failing to support the packing BGP-SR updates, encode each prefix in a separate BGP-SR update message.

6 . The router of claim 1 , wherein the circuitry is further configured to

receive a second BGP-SR update message from any of the BGP peers and determine an incoming label mapping (ILM) table based thereon.

7 . The router of claim 1 , wherein the associated label information includes the label for a corresponding prefix.

8 . The router of claim 1 , wherein the BGP-SR update message excludes a Label Index type-length-value (TLV).

9 . The router of claim 1 , wherein the plurality of prefixes are any of Internet Protocol version 4 (IPv4) and IP version 6 (IPv6) addresses.

10 . A method comprising steps of:

negotiating with border gateway protocol (BGP) peers for packing BGP-Segment Routing (BGP-SR) updates;

receiving a plurality of prefixes for a BGP-SR update message;

encode the plurality of prefixes with associated label information in network layer reachability information (NLRI) of the BGP-SR update message, wherein the associated label information in the NLRI is utilized to derive a Segment Identifier (SID) for a corresponding prefix of the plurality of prefixes, wherein the BGP-SR update message is a single message for all of the plurality of prefixes each of which has a different SID which is derived from a calculation using the associated label information in the NLRI, and

transmitting the BGP-SR update message to any of the BGP peers,

wherein the SID is derived for the corresponding prefix by

determining a label index as a label from the associated label information for the corresponding prefix subtracted by a local or peer segment routing global block (SRGB) start, and

determining the SID as the local SRGB start plus the label index,

wherein the steps further include encoding, in a peer SRGB range sub-TLV attribute of a BGP Prefix-SID TLV of the BGP-SR update message, a peer SRGB start label explicitly identifying a peer SRGB range shared uniformly across multiple BGP peers wherein the peer SRGB start label is distinct from any locally allocated SRGB start labels or ranges and from any flexible algorithm definitions or identifiers, and is explicitly used by receiving BGP peers to derive label indexes for Segment Identifiers.

11 . The method of claim 10 , wherein the plurality of prefixes all share same attributes.

12 . The method of claim 10 , wherein the BGP peers all include a same segment routing global block (SRGB).

13 . The method of claim 10 , wherein any of the BGP peers include a different segment routing global block (SRGB), and wherein the steps include

encoding the SRGB of a node performing the transmitting in an attribute.

14 . The method of claim 10 , wherein the steps include

responsive to any BGP peers failing to support the packing BGP-SR updates, encoding each prefix in a separate BGP-SR update message.

15 . The method of claim 10 , wherein the steps include

receiving a second BGP-SR update message from any of the BGP peers and determining an incoming label mapping (ILM) table based thereon.

16 . The method of claim 10 , wherein the associated label information includes the label for a corresponding prefix.

17 . The method of claim 10 , wherein the BGP-SR update message excludes a Label Index type-length-value (TLV).

18 . The method of claim 10 , wherein the plurality of prefixes are any of Internet Protocol version 4 (IPv4) and IP version 6 (IPv6) addresses.

19 . A non-transitory computer-readable medium comprising instructions that, when executed, cause a network element to perform steps of:

negotiating with border gateway protocol (BGP) peers for packing BGP-Segment Routing (BGP-SR) updates;

receiving a plurality of prefixes for a BGP-SR update message;

encode the plurality of prefixes with associated label information in network layer reachability information (NLRI) of the BGP-SR update message, wherein the associated label information in the NLRI is utilized to derive a Segment Identifier (SID) for a corresponding prefix of the plurality of prefixes, wherein the BGP-SR update message is a single message for all of the plurality of prefixes each of which has a different SID which is derived from a calculation using the associated label information in the NLRI, and

transmitting the BGP-SR update message to any of the BGP peers,

wherein the SID is derived for the corresponding prefix by

determining a label index as a label from the associated label information for the corresponding prefix subtracted by a local or peer segment routing global block (SRGB) start, and

determining the SID as the local SRGB start plus the label index,

wherein the steps further include encoding, in a peer SRGB range sub-TLV attribute of a BGP Prefix-SID TLV of the BGP-SR update message, a peer SRGB start label explicitly identifying a peer SRGB range shared uniformly across multiple BGP peers, wherein the peer SRGB start label is distinct from any locally allocated SRGB start labels or ranges and from any flexible algorithm definitions or identifiers, and is explicitly used by receiving BGP peers to derive label indexes for Segment Identifiers.

20 . The non-transitory computer-readable medium of claim 19 , wherein the plurality of prefixes all share same attributes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2022
From: DHARMSHAKTU, ANIL; MUNJAL, VARUN; DHILLON, PARAM PREET; SHARMA, PIYUSH
To: CIENA CORPORATION
Reel/Frame 061359/0302 →
Continuity (1)
Related Publication 20240073135A1 · Feb 29, 2024
References Cited (25)
US 9237090B2 · Tripathi et al. · 2016 [cited by applicant]
US 9509593B2 · Sharma et al. · 2016 [cited by applicant]
US 9516118B2 · Kini · 2016 [cited by examiner]
US 9538573B2 · Khan et al. · 2017 [cited by applicant]
US 10158448B2 · Prakash et al. · 2018 [cited by applicant]
US 10158500B2 · Chhabra et al. · 2018 [cited by applicant]
US 10862797B2 · Gautam et al. · 2020 [cited by applicant]
US 10887225B1 · Chan · 2021 [cited by examiner]
US 10917330B1 · Szarecki · 2021 [cited by examiner]
US 11438259B2 · Torvi · 2022 [cited by examiner]
US 11722401B2 · Hu · 2023 [cited by examiner]
US 20040090913A1 · Scudder · 2004 [cited by examiner]
US 20060233181A1 · Raszuk · 2006 [cited by examiner]
US 20140226531A1 · Farkas · 2014 [cited by examiner]
US 20150326675A1 · Kini · 2015 [cited by examiner]
US 20170026288A1 · Yang · 2017 [cited by examiner]
US 20180337852A1 · Gunalan · 2018 [cited by examiner]
US 20190305988A1 · Bickhart · 2019 [cited by examiner]
US 20190379596A1 · Sharma et al. · 2019 [cited by applicant]
US 20210029026A1 · Deshmukh · 2021 [cited by examiner]
US 20210266272A1 · Dutta · 2021 [cited by examiner]
US 20210273827A1 · Vairavakkalai · 2021 [cited by examiner]
US 20220094601A1 · Dutta · 2022 [cited by examiner]
US 20220124186A1 · Dutta · 2022 [cited by examiner]
S. Previdi et al., “Segment Routing Prefix SID extensions for BGP,” Internet-Draft, Standards Track, Jun. 26, 2018, pp. 1-20. [cited by applicant]