US20230179515A1 - Routing protocol broadcast link extensions - Google Patents
Routing protocol broadcast link extensions Download PDFInfo
- Publication number
- US20230179515A1 US20230179515A1 US18/154,712 US202318154712A US2023179515A1 US 20230179515 A1 US20230179515 A1 US 20230179515A1 US 202318154712 A US202318154712 A US 202318154712A US 2023179515 A1 US2023179515 A1 US 2023179515A1
- Authority
- US
- United States
- Prior art keywords
- link
- router
- link state
- asbrs
- routers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 54
- 238000004590 computer program Methods 0.000 claims 1
- ULGZDMOVFRHVEP-RWJQBGPGSA-N Erythromycin Chemical compound O([C@@H]1[C@@H](C)C(=O)O[C@@H]([C@@]([C@H](O)[C@@H](C)C(=O)[C@H](C)C[C@@](C)(O)[C@H](O[C@H]2[C@@H]([C@H](C[C@@H](C)O2)N(C)C)O)[C@H]1C)(C)O)CC)[C@H]1C[C@@](C)(OC)[C@@H](O)[C@H](C)O1 ULGZDMOVFRHVEP-RWJQBGPGSA-N 0.000 description 51
- 241000465502 Tobacco latent virus Species 0.000 description 16
- CVHZOJJKTDOEJC-UHFFFAOYSA-N saccharin Chemical compound C1=CC=C2C(=O)NS(=O)(=O)C2=C1 CVHZOJJKTDOEJC-UHFFFAOYSA-N 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 3
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- ABEXEQSGABRUHS-UHFFFAOYSA-N 16-methylheptadecyl 16-methylheptadecanoate Chemical compound CC(C)CCCCCCCCCCCCCCCOC(=O)CCCCCCCCCCCCCCC(C)C ABEXEQSGABRUHS-UHFFFAOYSA-N 0.000 description 1
- 241000764238 Isis Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005417 image-selected in vivo spectroscopy Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012739 integrated shape imaging system Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/52—Multiprotocol routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/60—Router architectures
Definitions
- Routing protocols specify how routers communicate with each other to distribute information that enables them to determine routes among themselves. Routing protocols include distance-vector routing protocols and link state routing protocols. In distance-vector routing protocols, each router shares its routing table with its neighboring routers. In link state protocols, each router shares its connectivity information with its neighboring routers.
- IS-IS and OSPF are both link state routing protocols that implement a Dijkstra algorithm to determine routes.
- IS-IS and OSPF have a few differences. For instance, IS-IS distributes link state information through LSPs, and an IS-IS router originates one or more LSPs that describe links attached to the IS-IS router.
- OSPF distributes link state information through LSAs, and an OSPF router originates one LSA that describes links connected to the OSPF router.
- IS-IS distributes TE information in TLVs added to existing LSPs, while OSPF distributes TE information in new TE LSAs.
- the disclosure includes a first router in a first AS, the first router comprising: a processor configured to: obtain information about a broadcast link connecting the first router to a second router in a second AS, and generate a link state message comprising the information; and a transmitter coupled to the processor and configured to transmit the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router.
- the information comprises a first sub-TLV, wherein the first sub-TLV comprises: an IP address field indicating a local IP address of a connection to the broadcast link; and a mask length field indicating a length of an IP address mask; the information further comprises a second sub-TLV, and wherein the second sub-TLV comprises a local AS number field indicating a local AS number of the first router; the link state message is an IS-IS LSP; the link state message is an OSPF LSA; the transmitter is further configured to further transmit the link state message to the third router when TE is enabled on the broadcast link; the processor is further configured to flush the link state message in the first AS when TE is disabled on the broadcast link; when TE parameters for the broadcast link have changed: the processor is further configured to generate a new link state message; and the transmitter is further configured to transmit the new link state message to the third router.
- the disclosure includes a method implemented in a first router in a first AS, the method comprising: obtaining information about a broadcast link connecting the first router to a second router in a second AS; generating a link state message comprising the information; and transmitting the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router.
- the information comprises a first sub-TLV, and wherein the first sub-TLV comprises: an IP address field indicating a local IP address of a connection to the broadcast link; and a mask length field indicating a length of an IP address mask; the information further comprises a second sub-TLV, and wherein the second sub-TLV comprises a local AS number field indicating a local AS number of the first router; the link state message is an IS-IS LSP; the link state message is an OSPF LSA; the method further comprises further transmitting the link state message to the third router when TE is enabled on the broadcast link; the method further comprises flushing the link state message in the first AS when TE is disabled on the broadcast link; when TE parameters for the broadcast link have changed, the method further comprises: generating a new link state message; and transmitting the new link state message to the third router.
- the disclosure includes a method comprising: receiving a first link state message from a first router; receiving a second link state message from a second router; receiving a third link state message from a third router; and determining which of the first router, the second router, and the third router are ASBRs connected to a broadcast link based on information in the first link state message, the second link state message, and the third link state message.
- the information comprises at least one of an IP address field indicating a local IP address of a connection to the broadcast link, a mask length field indicating a length of an IP address mask, or a local AS number field indicating an AS number;
- the first link state message, the second link state message, and the third link state message are either IS-IS LSPs or OSPF LSAs;
- the method further comprises designating a DR and a BDR from among the first router, the second router, and the third router; creating a pseudo node system using the first router, the second router, and the third router, wherein the pseudo node system comprises a pseudo node; and computing a routing path using the pseudo node.
- FIG. 1 is a schematic diagram of a routing system.
- FIG. 2 is a schematic diagram of another routing system according to an embodiment of the disclosure.
- FIG. 3 is a flowchart illustrating a method of broadcast link advertisement, withdrawal, and re-advertisement according to an embodiment of the disclosure.
- FIG. 4 is an inter-AS TE LSP according to an embodiment of the disclosure.
- FIG. 5 is an inter-AS TE LSA according to an embodiment of the disclosure.
- FIG. 6 is a sub-TLV according to an embodiment of the disclosure.
- FIG. 7 is a sub-TLV according to another embodiment of the disclosure.
- FIG. 8 is a sub-TLV according to yet another embodiment of the disclosure.
- FIG. 9 is a flowchart illustrating a method of pseudo node implementation according to an embodiment of the disclosure.
- FIG. 10 is a schematic diagram of a pseudo node system according to an embodiment of the disclosure.
- FIG. 11 is a flowchart illustrating a method of broadcast link advertisement according to an embodiment of the disclosure.
- FIG. 12 is a flowchart illustrating a method of pseudo node implementation according to another embodiment of the disclosure.
- FIG. 13 is a schematic diagram of an apparatus according to an embodiment of the disclosure.
- FIG. 1 is a schematic diagram of a routing system 100 .
- the routing system 100 comprises ASs 105 , 125 , 140 ; links 115 , 145 , 160 ; and a PCE 165 .
- the routing system 100 may implement IS-IS or OSPF.
- Each AS 105 , 125 , 140 appears to the other ASs 105 , 125 , 140 to have a single, coherent interior routing plan and presents a consistent picture of what networks are reachable through it.
- the AS 105 comprises a router 110 ; the AS 125 comprises routers 120 , 130 ; and the AS 140 comprises routers 135 , 150 , 155 .
- the ASs 105 , 125 , 140 may further comprise other routers that are not shown.
- the routers 110 , 120 , 130 , 135 , 150 , 155 may be referred to more generally as nodes or more specifically as ASBRs because they are routers at borders of the ASs 105 , 125 , 140 , meaning there are no routers in their ASs 105 , 125 , 140 that connect them to routers outside their ASs 105 , 125 , 140 .
- the routers 110 , 120 , 130 , 135 , 150 , 155 are networking devices that perform traffic directing functions for the routing system 100 .
- the PCE 165 may be referred to more generally as a node or more specifically as a controller such as an SDN controller.
- the PCE 165 is above and connects to the ASs 105 , 125 , 140 , and the PCE 165 computes TE paths crossing the ASs 105 , 125 , 140 .
- the PCE 165 may also be referred to as a super node.
- the link 115 connects the routers 110 , 135 and thus the ASs 105 , 140 to each other; the link 145 connects the routers 130 , 150 and thus the ASs 125 , 140 to each other; the link 160 connects the router 155 and the PCE 165 to each other; the link 170 connects the router 110 and the PCE 165 to each other; and the link 175 connects the router 130 and the PCE 165 to each other.
- the links 115 , 145 may be referred to as P2P inter-AS TE links, and the link 160 , 170 , 175 may be referred to as P2P links.
- P2P indicates the links 115 , 145 , 160 , 170 , 175 connect two points; inter-AS indicates the links 115 , 145 connect two ASs; and TE indicates the links 115 , 145 are to be used in TE paths crossing the ASs 105 , 125 , 140 .
- the link 115 connects two points, the router 110 and the router 135 ; connects two ASs, the AS 105 and the AS 140 ; and is used in a TE path segment from the router 110 to the router 120 .
- a TE link is a logical construct that represents a way to group or map information about physical resources that connect routers.
- IS-IS and OSPF did not provide approaches to advertise P2P inter-AS TE links like the links 115 , 145 .
- M. Chen, et al. “ISIS Extensions in Support of Inter-Autonomous System (AS) MPLS and GMPLS Traffic Engineering,” RFC 5316, Dec. 2008 (“RFC 5316”), which is incorporated by reference, describes how to advertise P2P inter-AS TE links in IS-IS.
- M. Chen, et al., “OSPF Extensions in Support of Inter-Autonomous System (AS) MPLS and GMPLS Traffic Engineering,” RFC 5392, Jan. 2009 (“RFC 5392”) similarly describes how to advertise P2P inter-AS TE links in OSPF.
- RFC 5316 does not describe how to advertise broadcast inter-AS TE links in IS-IS
- RFC 5392 similarly does not describe how to advertise broadcast inter-AS TE links in OSPF.
- the routing protocols are IS-IS, OSPF, or other suitable routing protocols.
- the broadcast links are broadcast inter-AS TE links or other suitable broadcast links.
- the extensions comprise advertisement, withdrawal, and re-advertisement of broadcast links, as well as pseudo node implementation. Advertisement and re-advertisement of the broadcast links comprise communicating link state messages.
- the link state messages comprise sub-TLVs for IP addresses with mask lengths and comprise local AS numbers.
- the pseudo node implementation comprises creating and using pseudo nodes for more efficient path routing across broadcast inter-AS TE links.
- FIG. 2 is a schematic diagram of another routing system 200 according to an embodiment of the disclosure.
- the routing system 200 is similar to the routing system 100 in FIG. 1 .
- the routing system 200 comprises ASs 205 , 225 , 240 ; links 215 , 245 , 260 , 270 , 275 ; and a PCE 265 .
- the AS 205 comprises a router 210 ;
- the AS 225 comprises the routers 220 , 230 ;
- the AS 240 comprises the routers 235 , 250 , 255 .
- the link 245 in the routing system 200 is a broadcast inter-AS TE link, not a P2P inter-AS TE link. Broadcast indicates the link 245 connects more than two points, specifically the routers 220 , 230 , 250 .
- the routers 210 , 220 , 230 , 235 , 250 have local IP addresses and mask lengths associated with the links 215 , 245 .
- the router 210 has a local IP address of 10.2.1.1 and a mask length of 30 associated with the link 215
- the router 220 has a local IP address of 10.1.1.3 and a mask length of 30 bits associated with the link 245
- the router 230 has a local IP address of 10.1.1.2 and mask length of 30 bits associated with the link 245
- the router 235 has a local IP address of 10.2.1.2 and a mask length of 30 bits associated with the link 215
- the router 250 has a local IP address of 10.1.1.1 and a mask length of 30 bits associated with the link 245
- the local IP addresses are network addresses that belong to interfaces of the routers 210 , 220 , 230 , 235 , 250 .
- the mask lengths indicate lengths of IP masks to apply to the IP addresses.
- FIG. 3 is a flowchart illustrating a method 300 of broadcast link advertisement, withdrawal, and re-advertisement according to an embodiment of the disclosure.
- One of the routers 220 , 230 , 250 implements the method 300 .
- the broadcast link is advertised.
- the router 220 transmits a link state message to its adjacent routers in the AS 225 , which transmit the link state message to their adjacent routers in the AS 225 .
- adjacent routers may mean routers that have IS-IS or OSPF adjacency.
- the router 230 may consider the PCE 265 as an adjacent router in the AS 225 and therefore transmit the link state message to the PCE 265 .
- the PCE 265 may run an instance of IS-IS or OSPF for each AS 205 , 225 , 240 and therefore act as an adjacent router for each AS 205 , 225 , 240 by receiving link state messages as an adjacent router.
- the PCE 265 may not transmit link state messages as an adjacent router.
- the router 220 may not transmit the link state message to routers in the other ASs 205 , 240 .
- the router 220 does not transmit the link state message to the router 250 in the AS 240 .
- the link state message comprises TE information about the link 245 . If the routing system 200 implements IS-IS, then the link state message is as shown in FIG. 4 . If the routing system 200 implements OSPF, then the link state message is as shown in FIG. 5 . Messages may also be referred to as packets or frames.
- the router 220 determines whether TE has been disabled on the broadcast link or if the broadcast link is down. For instance, the router 220 determines whether TE has been disabled on the link 245 by inspecting the user's configuration of the link 245 , and the router 220 determines the link 245 is down by receiving a message reporting that the link 245 is down. If the answer is no, then the method 300 proceeds to decision 350 . If the answer is yes, then the method proceeds to step 340 .
- the advertisement is withdrawn. For instance, when the routing system 200 implements OSPF, the router 220 flushes the link state message in the AS 240 by setting an age of the link state message to a maximum age such as 3,600 seconds.
- the router 220 determines whether the user's configuration of the link 245 have changed TE parameters for the link 245 such as bandwidth, or the router 220 computes current usage of resources of the link 245 . If the answer is no, then the method 300 ends. If the answer is yes, then the method 300 proceeds to step 360 .
- the broadcast link is re-advertised. For instance, the router 220 transmits a new link state message to its adjacent routers in the AS 225 . The new link state message comprises the changed TE parameters. Decisions 330 , 350 may be switched and may be repeated, for instance at specified times until the broadcast link is disabled or another event occurs.
- FIG. 4 is an inter-AS TE LSP 400 according to an embodiment of the disclosure.
- the inter-AS TE LSP 400 is an IS-IS message.
- the inter-AS TE LSP 400 may follow a format similar to LSPs described in T. Li, et al., “IS-IS Extensions for Traffic Engineering,” RFC 5305, Oct. 2008, which is incorporated by reference.
- the inter-AS TE LSP 400 comprises a header 410 and an inter-AS reachability TLV 420 .
- the header 410 comprises an LSP ID indicating a router transmitting the inter-AS TE LSP 400 . For instance, if the router 220 transmits the inter-AS TE LSP 400 , then the header 410 comprises 220 .
- the LSP ID is a number such as 5.5.5.5.
- the inter-AS reachability TLV 420 comprises sub-TLVs as described below.
- FIG. 5 is an inter-AS TE LSA 500 according to an embodiment of the disclosure.
- the inter-AS TE LSA 500 is an OSPF message.
- the inter-AS TE LSA 500 may follow a format similar to the Inter-AS-TE-v2 LSA or the Inter-AS-TE-v3 LSA described in RFC 5392.
- the inter-AS TE LSA 500 comprises a header 510 and a link TLV 520 .
- the header 510 comprises an advertising router number indicating a router transmitting the inter-AS TE LSA 500 . For instance, if the router 220 transmits the inter-AS TE LSA 500 , then the header 510 comprises 220 . Alternatively, the advertising router is a number such as 5.5.5.5.
- the link TLV 520 comprises sub-TLVs as described below.
- Both the inter-AS reachability TLV 420 and the link TLV 520 comprise sub-TLVs.
- the sub-TLVs comprise information about a broadcast link and include a first sub-TLV indicating a link type, a second sub-TLV indicating a local IP address and a mask length, a third sub-TLV indicating a TE metric, a fourth sub-TLV indicating a local AS number, a fifth sub-TLV indicating a maximum bandwidth, a sixth sub-TLV indicating a maximum reservable bandwidth, a seventh sub-TLV indicating an unreserved bandwidth, and an eighth sub-TLV indicating an administrative group.
- the first sub-TLV may further indicate that the link type is multi-access for a broadcast link such as the link 245 .
- the second sub-TLV and the fourth sub-TLV are new sub-TLVs as described below, and the remaining sub-TLVs may be as described in D. Katz, et al., “Traffic Engineering (TE) Extensions to OSPF Version 2,” RFC 3630, Sep. 2003.
- the orders “first,” “second,” “third,” “fourth,” “fifth,” “sixth,” “seventh,” and “eighth” may or may not indicate actual or relative ordering.
- a router for instance the router 220 , may retrieve the information from its memory via an interface manager.
- the inter-AS reachability TLV 420 and the link TLV 520 may omit a sub-TLV indicating a link ID and a sub-TLV indicating a remote IP address.
- FIG. 6 is sub-TLV 600 according to an embodiment of the disclosure.
- the sub-TLV 600 is in the inter-AS reachability TLV 420 or the link TLV 520 .
- the sub-TLV 600 comprises a type field 610 of two bytes, a length field 620 of two bytes, an IPv4 address field 630 of four bytes, and a mask length field 640 of one byte.
- the type field 610 is any value indicating that the sub-TLV 600 comprises a local IPv4 address with a mask length.
- the length field 620 indicates a sum of a length of the IPv4 address field 630 and a length of the mask length field 640 . For instance, the sum is five bytes.
- the IPv4 address field 630 indicates a local IPv4 address of a connection to a broadcast link. For instance, if the router 220 transmits the sub -TLV 600 to its adjacent routers in the AS 225 , then the IPv4 address field 630 indicates 10.1.1.3, which is the local IPv4 address of a connection of the router 220 to the link 245 .
- the mask length field 640 indicates a length of an IPv4 address mask. For instance, if the router 220 transmits the sub-TLV 600 to its adjacent routers in the AS 225 , then the mask length field 640 indicates 30.
- FIG. 7 is a sub-TLV 700 according to another embodiment of the disclosure.
- the sub-TLV 700 is similar to the sub-TLV 600 in FIG. 6 .
- the sub-TLV 700 comprises a type field 710 of two bytes, a length field 720 of two bytes, and a mask length field 740 of one byte.
- the sub-TLV 700 comprises an IPv6 address field 730 of 16 bytes.
- the IPv6 address field 730 indicates a local IPv6 address of a connection to a broadcast link
- the mask length field 740 indicates a length of an IPv6 address mask.
- IPv4 address masks and IPv6 address masks may be referred to as IP address masks.
- FIG. 8 is a sub-TLV 800 according to yet another embodiment of the disclosure.
- the sub-TLV 800 is in the inter-AS reachability TLV 420 or the link TLV 520 .
- the sub-TLV 800 comprises a type field 810 of two bytes, a length field 820 of two bytes, and a local AS number field 830 of four bytes.
- the type field 810 is any value indicating that the sub-TLV 800 comprises a local AS number.
- the length field 820 indicates a length of the local AS number field 830 . For instance, the length is four bytes.
- the local AS number field 830 indicates a local AS number of an ASBR originating the inter-AS TE LSP 400 . If the sub-TLV 800 is in the link TLV 520 , then the local AS number field 830 indicates a local AS number of an ASBR originating the inter-AS TE LSA 500 . For instance, if the router 220 transmits the sub-TLV 800 to its adjacent routers in the AS 225 , then the local AS number field 830 indicates 225 , which is the local AS number of the router 220 .
- FIG. 9 is a flowchart illustrating a method 900 of pseudo node implementation according to an embodiment of the disclosure.
- a super node for instance the PCE 265 , implements the method 900 .
- the PCE 265 may store in a TED data received and generated in the method 900 .
- the TED may be within the PCE 265 or in another device accessible to the PCE 265 .
- link state messages are received from all routers.
- the PCE 265 receives the inter-AS TE LSP 400 or the inter-AS TE LSA 500 from each of the routers 210 , 220 , 230 , 235 , 250 , 255 .
- the PCE 265 does so either directly from the routers 210 , 230 , 255 or indirectly through paths comprising multiple routers 210 , 220 , 230 , 235 , 250 , 255 .
- the PCE 265 receives the link state messages from less than all of the routers 210 , 220 , 230 , 235 , 250 , 255 , but at least the routers 210 , 220 , 230 , 235 , 250 , 255 connected to the link 245 .
- ASBRs connected to a broadcast link are determined.
- the PCE 265 determines that the routers 220 , 230 , 250 are ASBRs based on a presence of flags in the link state messages.
- the PCE 265 determines that the routers 220 , 230 , 250 are connected to the link 245 as follows. First, the PCE 265 obtains from the link state messages the local IP address 10.1.1.3 and the mask length of 30 bits for the router 220 , the local IP address 10.1.1.2 and the mask length of 30 bits for the router 230 , and the local IP address 10.1.1.1 and the mask length of 30 bits for the router 250 .
- the PCE 265 applies a 30-bit mask to each of those local IP addresses to obtain the same 10.1.1.0. Third, the PCE 265 determines that the routers 220 , 230 , 250 are part of the same link 245 because their IP addresses all result in 10.1.1.0 after application of the mask. Fourth, the PCE 265 determines that the link 245 is a broadcast link because the link state messages comprise sub-TLVs indicating the link type is multi-access.
- a DR and a BDR are designated.
- the PCE 265 designates as the DR the first router 220 , 230 , 250 that the PCE 265 receives a link state message from
- the PCE 265 designates as the BDR the second router 220 , 230 , 250 that the PCE 265 receives a link state message from.
- the PCE 265 designates the router 220 as the DR and the router 230 as the BDR.
- the PCE 265 designates the DR and the BDR based on other suitable criteria.
- a pseudo node system is created.
- FIG. 10 is a schematic diagram of a pseudo node system 1000 according to an embodiment of the disclosure.
- the pseudo node system 1000 comprises the routers 220 , 230 , 250 ; a pseudo node 1020 ; and links 1010 , 1030 , 1040 .
- the pseudo node 1020 is a logical construct, or virtual node, that represents a center point among the routers 220 , 230 , 250 .
- the links 1010 , 1030 , 1040 are also logical constructs.
- the link 1010 connects the router 250 to the pseudo node 1020
- the link 1030 connects the router 220 to the pseudo node 1020
- the link 1040 connects the router 230 to the pseudo node 1020 .
- the pseudo node system 1000 provides a more efficient representation for the link 245 , particularly if additional routers are connected to the link 245 .
- the PCE 265 obtains the local IP address of 10.1.1.3 and the mask length of 30 bits.
- the PCE 265 applies a 30-bit mask to the local IP address of 10.1.1.3 to obtain 10.1.1.0.
- the PCE 265 designates 10.1.1.3 as the ID of the pseudo node 1020 .
- the PCE 265 creates a connection via the link 1030 with the local IP address of 10.1.1.3 and the mask length of 30 bits between the router 220 and the pseudo node 1020 .
- the PCE 265 creates a connection via the link 1010 with the local IP address of 10.1.1.1 and the mask length of 30 bits between the router 250 and the pseudo node 1020
- the PCE 265 creates a connection via the link 1040 with the local IP address of 10.1.1.2 and the mask length of 30 bits between the router 230 and the pseudo node 1020 .
- the BDR is designated as a new DR when the DR is disabled.
- the router 220 is disabled due to its removal from the routing system 200 , its powering down, or another cause.
- the PCE 265 designates the router 230 as the new DR.
- the PCE 265 designates as a new BDR the router with the smallest local IP address or the largest local IP address.
- the router 250 is the only remaining router, so it has either the smallest local IP address or the largest local IP address and therefore becomes the new BDR.
- the PCE 265 removes the links 1010 , 1030 , 1040 associated with the disabled DR. For instance, the PCE 265 removes the link 1030 .
- Step 950 is optional and may not necessarily occur. If step 950 occurs, it may not occur after step 940 , but may instead occur at any other time when the DR is disabled.
- a path is computed using the pseudo node.
- the PCE 265 computes a routing path using the pseudo node 1020 .
- Computing the routing path using the pseudo node 1020 provides for more efficient computation in the PCE 265 .
- FIG. 11 is a flowchart illustrating a method 1100 of broadcast link advertisement according to an embodiment of the disclosure.
- a router for instance the router 220 in the AS 225 , implements the method 1100 .
- information about a broadcast link connecting a first router to a second router in a second AS is obtained.
- the first router is in a first AS.
- the router 220 obtains information about the link 245 , which connects the router 220 in the AS 225 to the router 250 in the AS 240 .
- the information comprises any combination of the IPv4 address field 630 , mask length field 640 , the IPv6 address field 730 , the mask length field 740 , the local AS number field 830 , or the other sub-TLV information described above.
- a link state message comprising the information is generated.
- the router 220 generates the inter-AS TE LSP 400 or the inter-AS TE LSA 500 .
- the link state message is transmitted to a third router.
- the third router is in the first AS and is adjacent to the first router.
- FIG. 12 is a flowchart illustrating a method 1200 of pseudo node implementation according to another embodiment of the disclosure.
- a super node for instance the PCE 265 , implements the method 1200 .
- the PCE 265 may do so using a TED.
- a first link state message is received from a first router.
- the PCE 265 receives the inter-AS TE LSP 400 or the inter-AS TE LSA 500 from the router 220 .
- a second link state message is received from a second router.
- the PCE 265 receives the inter-AS TE LSP 400 or the inter-AS TE LSA 500 from the router 230 .
- a third link state message is received from a third router. For instance, the PCE 265 receives the inter-AS TE LSP 400 or the inter-AS TE LSA 500 from the router 250 .
- step 1240 it is determined which of the first router, the second router, and the third router are ASBRs connected to a broadcast link based on information in the first link state message, the second link state message, and the third link state message.
- the PCE 265 determines which of the routers 220 , 230 , 250 are ASBRs connected to the link 245 and determines that the link 245 is a broadcast link. The PCE 265 may do so as described with respect to step 920 in FIG. 9 .
- FIG. 13 is a schematic diagram of an apparatus 1300 according to an embodiment of the disclosure.
- the apparatus 1300 may implement the disclosed embodiments.
- the apparatus 1300 comprises ingress ports 1310 and an RX 1320 for receiving data; a processor, logic unit, baseband unit, or CPU 1330 to process the data; a TX 1340 and egress ports 1350 for transmitting the data; and a memory 1360 for storing the data.
- the apparatus 1300 may also comprise OE components, EO components, or RF components coupled to the ingress ports 1310 , the RX 1320 , the TX 1340 , and the egress ports 1350 for ingress or egress of optical, electrical signals, or RF signals.
- the processor 1330 is any combination of hardware, middleware, firmware, or software.
- the processor 1330 comprises any combination of one or more CPU chips, cores, FPGAs, ASICs, or DSPs.
- the processor 1330 communicates with the ingress ports 1310 , RX 1320 , TX 1340 , egress ports 1350 , and memory 1360 .
- the processor 1330 comprises a path computation component 1370 , a TED 1380 , and an interface manager 1390 , which implement the disclosed embodiments.
- the inclusion of the path computation component 1370 , the TED 1380 , and the interface manager 1390 therefore provides a substantial improvement to the functionality of the apparatus 1300 and effects a transformation of the apparatus 1300 to a different state.
- the memory 1360 stores the path computation component 1370 , the TED 1380 , and the interface manager 1390 as instructions, and the processor 1330 executes those instructions.
- the memory 1360 comprises any combination of disks, tape drives, or solid-state drives.
- the apparatus 1300 may use the memory 1360 as an over-flow data storage device to store programs when the apparatus 1300 selects those programs for execution and to store instructions and data that the apparatus 1300 reads during execution of those programs.
- the memory 1360 may be volatile or non-volatile and may be any combination of ROM, RAM, TCAM, or SRAM.
- a first router in a first AS the first router comprises: a processing element configured to: obtain information about a broadcast link connecting the first router to a second router in a second AS, and generate a link state message comprising the information; and a transmitting element coupled to the processing element and configured to transmit the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router.
- a first component is directly coupled to a second component when there are no intervening components, except for a line, a trace, or another medium between the first component and the second component.
- the first component is indirectly coupled to the second component when there are intervening components other than a line, a trace, or another medium between the first component and the second component.
- the term “coupled” and its variants include both directly coupled and indirectly coupled. The use of the term “about” means a range including ⁇ 10% of the subsequent number unless otherwise stated.
Abstract
A first router in a first AS, the first router comprises: a processor configured to: obtain information about a broadcast link connecting the first router to a second router in a second AS, and generate a link state message comprising the information; and a transmitter coupled to the processor and configured to transmit the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router. A method comprises: receiving a first link state message from a first router; receiving a second link state message from a second router; receiving a third link state message from a third router; determining which of the first router, the second router, and the third router are ASBRs connected to a broadcast link based on information in the first link state message, the second link state message, and the third link state message.
Description
- This is a continuation of U.S. patent application Ser. No. 15/901,494 filed on Feb. 21, 2018, which claims priority to U.S. Prov. Patent App. No. 62/469,686 filed on Mar. 10, 2017 and U.S. Prov. Patent App. No. 62/469,692 filed on Mar. 10, 2017, all of which are incorporated by reference.
- Not applicable.
- Not applicable.
- Routing protocols specify how routers communicate with each other to distribute information that enables them to determine routes among themselves. Routing protocols include distance-vector routing protocols and link state routing protocols. In distance-vector routing protocols, each router shares its routing table with its neighboring routers. In link state protocols, each router shares its connectivity information with its neighboring routers.
- IS-IS and OSPF are both link state routing protocols that implement a Dijkstra algorithm to determine routes. However, IS-IS and OSPF have a few differences. For instance, IS-IS distributes link state information through LSPs, and an IS-IS router originates one or more LSPs that describe links attached to the IS-IS router. OSPF distributes link state information through LSAs, and an OSPF router originates one LSA that describes links connected to the OSPF router. In addition, IS-IS distributes TE information in TLVs added to existing LSPs, while OSPF distributes TE information in new TE LSAs.
- In one embodiment, the disclosure includes a first router in a first AS, the first router comprising: a processor configured to: obtain information about a broadcast link connecting the first router to a second router in a second AS, and generate a link state message comprising the information; and a transmitter coupled to the processor and configured to transmit the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router. In some embodiments, the information comprises a first sub-TLV, wherein the first sub-TLV comprises: an IP address field indicating a local IP address of a connection to the broadcast link; and a mask length field indicating a length of an IP address mask; the information further comprises a second sub-TLV, and wherein the second sub-TLV comprises a local AS number field indicating a local AS number of the first router; the link state message is an IS-IS LSP; the link state message is an OSPF LSA; the transmitter is further configured to further transmit the link state message to the third router when TE is enabled on the broadcast link; the processor is further configured to flush the link state message in the first AS when TE is disabled on the broadcast link; when TE parameters for the broadcast link have changed: the processor is further configured to generate a new link state message; and the transmitter is further configured to transmit the new link state message to the third router.
- In another embodiment, the disclosure includes a method implemented in a first router in a first AS, the method comprising: obtaining information about a broadcast link connecting the first router to a second router in a second AS; generating a link state message comprising the information; and transmitting the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router. In some embodiments, the information comprises a first sub-TLV, and wherein the first sub-TLV comprises: an IP address field indicating a local IP address of a connection to the broadcast link; and a mask length field indicating a length of an IP address mask; the information further comprises a second sub-TLV, and wherein the second sub-TLV comprises a local AS number field indicating a local AS number of the first router; the link state message is an IS-IS LSP; the link state message is an OSPF LSA; the method further comprises further transmitting the link state message to the third router when TE is enabled on the broadcast link; the method further comprises flushing the link state message in the first AS when TE is disabled on the broadcast link; when TE parameters for the broadcast link have changed, the method further comprises: generating a new link state message; and transmitting the new link state message to the third router.
- In yet another embodiment, the disclosure includes a method comprising: receiving a first link state message from a first router; receiving a second link state message from a second router; receiving a third link state message from a third router; and determining which of the first router, the second router, and the third router are ASBRs connected to a broadcast link based on information in the first link state message, the second link state message, and the third link state message. In some embodiments, the information comprises at least one of an IP address field indicating a local IP address of a connection to the broadcast link, a mask length field indicating a length of an IP address mask, or a local AS number field indicating an AS number; the first link state message, the second link state message, and the third link state message are either IS-IS LSPs or OSPF LSAs; the method further comprises designating a DR and a BDR from among the first router, the second router, and the third router; creating a pseudo node system using the first router, the second router, and the third router, wherein the pseudo node system comprises a pseudo node; and computing a routing path using the pseudo node.
- Any of the above embodiments may be combined with any of the other above embodiments to create a new embodiment. These and other features will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings and claims.
- For a more complete understanding of this disclosure, reference is now made to the following brief description, taken in connection with the accompanying drawings and detailed description, wherein like reference numerals represent like parts.
-
FIG. 1 is a schematic diagram of a routing system. -
FIG. 2 is a schematic diagram of another routing system according to an embodiment of the disclosure. -
FIG. 3 is a flowchart illustrating a method of broadcast link advertisement, withdrawal, and re-advertisement according to an embodiment of the disclosure. -
FIG. 4 is an inter-AS TE LSP according to an embodiment of the disclosure. -
FIG. 5 is an inter-AS TE LSA according to an embodiment of the disclosure. -
FIG. 6 is a sub-TLV according to an embodiment of the disclosure. -
FIG. 7 is a sub-TLV according to another embodiment of the disclosure. -
FIG. 8 is a sub-TLV according to yet another embodiment of the disclosure. -
FIG. 9 is a flowchart illustrating a method of pseudo node implementation according to an embodiment of the disclosure. -
FIG. 10 is a schematic diagram of a pseudo node system according to an embodiment of the disclosure. -
FIG. 11 is a flowchart illustrating a method of broadcast link advertisement according to an embodiment of the disclosure. -
FIG. 12 is a flowchart illustrating a method of pseudo node implementation according to another embodiment of the disclosure. -
FIG. 13 is a schematic diagram of an apparatus according to an embodiment of the disclosure. - It should be understood at the outset that, although an illustrative implementation of one or more embodiments are provided below, the disclosed systems and/or methods may be implemented using any number of techniques, whether currently known or in existence. The disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the exemplary designs and implementations illustrated and described herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
- The following abbreviations and initialisms apply:
-
- AS: autonomous system
- ASBR: AS border router
- ASIC: application-specific integrated circuit
- BDR: backup DR
- CPU: central processing unit
- DR: designated router
- DSP: digital signal processor
- EO: electrical-to-optical
- FPGA: field-programmable gate array
- ID: identifier
- IP: Internet Protocol
- IPv4:
IP version 4 - IPv6:
IP version 6 - IS-IS: Intermediate System to Intermediate System
- LSA: link state advertisement
- LSP: link state PDU
- OE: optical-to-electrical
- OSPF: Open Shortest Path First
- PCE: path computation element
- PDU: protocol data unit
- P2P: point-to-point
- RAM: random-access memory
- RF: radio frequency
- RFC: request for comments
- ROM: read-only memory
- RX: receiver unit
- SDN: software-defined networking
- SRAM: static RAM
- TCAM: ternary content-addressable memory
- TE: traffic engineering
- TED: TE database
- TLV: type, length, and value
- TX: transmitter unit.
-
FIG. 1 is a schematic diagram of arouting system 100. Therouting system 100 comprisesASs links PCE 165. Therouting system 100 may implement IS-IS or OSPF. Each AS 105, 125, 140 appears to theother ASs AS 105 comprises arouter 110; theAS 125 comprisesrouters AS 140 comprisesrouters ASs - The
routers ASs ASs ASs routers routing system 100. ThePCE 165 may be referred to more generally as a node or more specifically as a controller such as an SDN controller. ThePCE 165 is above and connects to theASs PCE 165 computes TE paths crossing theASs PCE 165 may also be referred to as a super node. - The
link 115 connects therouters ASs link 145 connects therouters ASs link 160 connects therouter 155 and thePCE 165 to each other; thelink 170 connects therouter 110 and thePCE 165 to each other; and thelink 175 connects therouter 130 and thePCE 165 to each other. Thelinks link links links links ASs link 115 connects two points, therouter 110 and therouter 135; connects two ASs, theAS 105 and theAS 140; and is used in a TE path segment from therouter 110 to therouter 120. A TE link is a logical construct that represents a way to group or map information about physical resources that connect routers. - Previously, IS-IS and OSPF did not provide approaches to advertise P2P inter-AS TE links like the
links - Disclosed herein are embodiments for routing protocol broadcast link extensions. The routing protocols are IS-IS, OSPF, or other suitable routing protocols. The broadcast links are broadcast inter-AS TE links or other suitable broadcast links. The extensions comprise advertisement, withdrawal, and re-advertisement of broadcast links, as well as pseudo node implementation. Advertisement and re-advertisement of the broadcast links comprise communicating link state messages. The link state messages comprise sub-TLVs for IP addresses with mask lengths and comprise local AS numbers. The pseudo node implementation comprises creating and using pseudo nodes for more efficient path routing across broadcast inter-AS TE links.
-
FIG. 2 is a schematic diagram of anotherrouting system 200 according to an embodiment of the disclosure. Therouting system 200 is similar to therouting system 100 inFIG. 1 . Specifically, like therouting system 100, therouting system 200 comprisesASs links PCE 265. In addition, like in therouting system 100, theAS 205 comprises arouter 210; theAS 225 comprises therouters AS 240 comprises therouters - However, unlike in the
routing system 100, thelink 245 in therouting system 200 is a broadcast inter-AS TE link, not a P2P inter-AS TE link. Broadcast indicates thelink 245 connects more than two points, specifically therouters routers links router 210 has a local IP address of 10.2.1.1 and a mask length of 30 associated with thelink 215, therouter 220 has a local IP address of 10.1.1.3 and a mask length of 30 bits associated with thelink 245, therouter 230 has a local IP address of 10.1.1.2 and mask length of 30 bits associated with thelink 245, therouter 235 has a local IP address of 10.2.1.2 and a mask length of 30 bits associated with thelink 215, and therouter 250 has a local IP address of 10.1.1.1 and a mask length of 30 bits associated with thelink 245. The local IP addresses are network addresses that belong to interfaces of therouters -
FIG. 3 is a flowchart illustrating amethod 300 of broadcast link advertisement, withdrawal, and re-advertisement according to an embodiment of the disclosure. One of therouters router 220, implements themethod 300. Atdecision 310, it is determined whether TE has been enabled on a broadcast link. For instance, therouter 220 determines whether TE has been enabled on thelink 245 by inspecting a user's configuration of thelink 245. Using an interface manager of therouter 220, the user may have previously entered the configuration for storage in a memory of therouter 220. If the answer is no, then themethod 300 ends. If the answer is yes, then themethod 300 proceeds to step 320. - At
step 320, the broadcast link is advertised. For instance, therouter 220 transmits a link state message to its adjacent routers in theAS 225, which transmit the link state message to their adjacent routers in theAS 225. In this case, adjacent routers may mean routers that have IS-IS or OSPF adjacency. In addition, therouter 230 may consider thePCE 265 as an adjacent router in theAS 225 and therefore transmit the link state message to thePCE 265. ThePCE 265 may run an instance of IS-IS or OSPF for each AS 205, 225, 240 and therefore act as an adjacent router for each AS 205, 225, 240 by receiving link state messages as an adjacent router. However, thePCE 265 may not transmit link state messages as an adjacent router. Therouter 220 may not transmit the link state message to routers in theother ASs router 220 does not transmit the link state message to therouter 250 in theAS 240. The link state message comprises TE information about thelink 245. If therouting system 200 implements IS-IS, then the link state message is as shown inFIG. 4 . If therouting system 200 implements OSPF, then the link state message is as shown inFIG. 5 . Messages may also be referred to as packets or frames. - At
decision 330, it is determined whether TE has been disabled on the broadcast link or if the broadcast link is down. For instance, therouter 220 determines whether TE has been disabled on thelink 245 by inspecting the user's configuration of thelink 245, and therouter 220 determines thelink 245 is down by receiving a message reporting that thelink 245 is down. If the answer is no, then themethod 300 proceeds todecision 350. If the answer is yes, then the method proceeds to step 340. Atstep 340, the advertisement is withdrawn. For instance, when therouting system 200 implements OSPF, therouter 220 flushes the link state message in theAS 240 by setting an age of the link state message to a maximum age such as 3,600 seconds. - At
decision 350, it is determined whether TE parameters for the broadcast link have changed. For instance, therouter 220 determines whether the user's configuration of thelink 245 have changed TE parameters for thelink 245 such as bandwidth, or therouter 220 computes current usage of resources of thelink 245. If the answer is no, then themethod 300 ends. If the answer is yes, then themethod 300 proceeds to step 360. Atstep 360, the broadcast link is re-advertised. For instance, therouter 220 transmits a new link state message to its adjacent routers in theAS 225. The new link state message comprises the changed TE parameters.Decisions -
FIG. 4 is aninter-AS TE LSP 400 according to an embodiment of the disclosure. Theinter-AS TE LSP 400 is an IS-IS message. Theinter-AS TE LSP 400 may follow a format similar to LSPs described in T. Li, et al., “IS-IS Extensions for Traffic Engineering,” RFC 5305, Oct. 2008, which is incorporated by reference. In addition, theinter-AS TE LSP 400 comprises aheader 410 and aninter-AS reachability TLV 420. Theheader 410 comprises an LSP ID indicating a router transmitting theinter-AS TE LSP 400. For instance, if therouter 220 transmits theinter-AS TE LSP 400, then theheader 410 comprises 220. Alternatively, the LSP ID is a number such as 5.5.5.5. Theinter-AS reachability TLV 420 comprises sub-TLVs as described below. -
FIG. 5 is aninter-AS TE LSA 500 according to an embodiment of the disclosure. Theinter-AS TE LSA 500 is an OSPF message. Theinter-AS TE LSA 500 may follow a format similar to the Inter-AS-TE-v2 LSA or the Inter-AS-TE-v3 LSA described in RFC 5392. In addition, theinter-AS TE LSA 500 comprises aheader 510 and alink TLV 520. Theheader 510 comprises an advertising router number indicating a router transmitting theinter-AS TE LSA 500. For instance, if therouter 220 transmits theinter-AS TE LSA 500, then theheader 510 comprises 220. Alternatively, the advertising router is a number such as 5.5.5.5. Thelink TLV 520 comprises sub-TLVs as described below. - Both the
inter-AS reachability TLV 420 and thelink TLV 520 comprise sub-TLVs. The sub-TLVs comprise information about a broadcast link and include a first sub-TLV indicating a link type, a second sub-TLV indicating a local IP address and a mask length, a third sub-TLV indicating a TE metric, a fourth sub-TLV indicating a local AS number, a fifth sub-TLV indicating a maximum bandwidth, a sixth sub-TLV indicating a maximum reservable bandwidth, a seventh sub-TLV indicating an unreserved bandwidth, and an eighth sub-TLV indicating an administrative group. The first sub-TLV may further indicate that the link type is multi-access for a broadcast link such as thelink 245. The second sub-TLV and the fourth sub-TLV are new sub-TLVs as described below, and the remaining sub-TLVs may be as described in D. Katz, et al., “Traffic Engineering (TE) Extensions toOSPF Version 2,” RFC 3630, Sep. 2003. The orders “first,” “second,” “third,” “fourth,” “fifth,” “sixth,” “seventh,” and “eighth” may or may not indicate actual or relative ordering. A router, for instance therouter 220, may retrieve the information from its memory via an interface manager. Theinter-AS reachability TLV 420 and thelink TLV 520 may omit a sub-TLV indicating a link ID and a sub-TLV indicating a remote IP address. -
FIG. 6 is sub-TLV 600 according to an embodiment of the disclosure. Thesub-TLV 600 is in theinter-AS reachability TLV 420 or thelink TLV 520. Thesub-TLV 600 comprises atype field 610 of two bytes, alength field 620 of two bytes, anIPv4 address field 630 of four bytes, and amask length field 640 of one byte. Thetype field 610 is any value indicating that thesub-TLV 600 comprises a local IPv4 address with a mask length. Thelength field 620 indicates a sum of a length of theIPv4 address field 630 and a length of themask length field 640. For instance, the sum is five bytes. TheIPv4 address field 630 indicates a local IPv4 address of a connection to a broadcast link. For instance, if therouter 220 transmits the sub -TLV 600 to its adjacent routers in theAS 225, then theIPv4 address field 630 indicates 10.1.1.3, which is the local IPv4 address of a connection of therouter 220 to thelink 245. Themask length field 640 indicates a length of an IPv4 address mask. For instance, if therouter 220 transmits the sub-TLV 600 to its adjacent routers in theAS 225, then themask length field 640 indicates 30. -
FIG. 7 is a sub-TLV 700 according to another embodiment of the disclosure. Thesub-TLV 700 is similar to the sub-TLV 600 inFIG. 6 . Specifically, like the sub-TLV 600, thesub-TLV 700 comprises atype field 710 of two bytes, alength field 720 of two bytes, and amask length field 740 of one byte. However, unlike the sub-TLV 600, which comprises anIPv4 address field 630, thesub-TLV 700 comprises anIPv6 address field 730 of 16 bytes. TheIPv6 address field 730 indicates a local IPv6 address of a connection to a broadcast link, and themask length field 740 indicates a length of an IPv6 address mask. Together, IPv4 address masks and IPv6 address masks may be referred to as IP address masks. -
FIG. 8 is a sub-TLV 800 according to yet another embodiment of the disclosure. Thesub-TLV 800 is in theinter-AS reachability TLV 420 or thelink TLV 520. Thesub-TLV 800 comprises atype field 810 of two bytes, alength field 820 of two bytes, and a local ASnumber field 830 of four bytes. Thetype field 810 is any value indicating that thesub-TLV 800 comprises a local AS number. Thelength field 820 indicates a length of the local ASnumber field 830. For instance, the length is four bytes. If thesub-TLV 800 is in theinter-AS reachability TLV 420, then the local ASnumber field 830 indicates a local AS number of an ASBR originating theinter-AS TE LSP 400. If thesub-TLV 800 is in thelink TLV 520, then the local ASnumber field 830 indicates a local AS number of an ASBR originating theinter-AS TE LSA 500. For instance, if therouter 220 transmits the sub-TLV 800 to its adjacent routers in theAS 225, then the local ASnumber field 830 indicates 225, which is the local AS number of therouter 220. -
FIG. 9 is a flowchart illustrating amethod 900 of pseudo node implementation according to an embodiment of the disclosure. A super node, for instance thePCE 265, implements themethod 900. ThePCE 265 may store in a TED data received and generated in themethod 900. The TED may be within thePCE 265 or in another device accessible to thePCE 265. - At
step 910, link state messages are received from all routers. For instance, thePCE 265 receives theinter-AS TE LSP 400 or theinter-AS TE LSA 500 from each of therouters PCE 265 does so either directly from therouters multiple routers PCE 265 receives the link state messages from less than all of therouters routers link 245. - At
step 920, ASBRs connected to a broadcast link are determined. For instance, thePCE 265 determines that therouters PCE 265 then determines that therouters link 245 as follows. First, thePCE 265 obtains from the link state messages the local IP address 10.1.1.3 and the mask length of 30 bits for therouter 220, the local IP address 10.1.1.2 and the mask length of 30 bits for therouter 230, and the local IP address 10.1.1.1 and the mask length of 30 bits for therouter 250. Second, thePCE 265 applies a 30-bit mask to each of those local IP addresses to obtain the same 10.1.1.0. Third, thePCE 265 determines that therouters same link 245 because their IP addresses all result in 10.1.1.0 after application of the mask. Fourth, thePCE 265 determines that thelink 245 is a broadcast link because the link state messages comprise sub-TLVs indicating the link type is multi-access. - At
step 930, a DR and a BDR are designated. For instance, thePCE 265 designates as the DR thefirst router PCE 265 receives a link state message from, and thePCE 265 designates as the BDR thesecond router PCE 265 receives a link state message from. As an example, thePCE 265 designates therouter 220 as the DR and therouter 230 as the BDR. Alternatively, thePCE 265 designates the DR and the BDR based on other suitable criteria. Atstep 940, a pseudo node system is created. -
FIG. 10 is a schematic diagram of apseudo node system 1000 according to an embodiment of the disclosure. Thepseudo node system 1000 comprises therouters pseudo node 1020; andlinks pseudo node 1020 is a logical construct, or virtual node, that represents a center point among therouters links link 1010 connects therouter 250 to thepseudo node 1020, thelink 1030 connects therouter 220 to thepseudo node 1020, and thelink 1040 connects therouter 230 to thepseudo node 1020. Thepseudo node system 1000 provides a more efficient representation for thelink 245, particularly if additional routers are connected to thelink 245. - Returning to step 940 of
FIG. 9 , from the link state message from the DR, which is therouter 220, thePCE 265 obtains the local IP address of 10.1.1.3 and the mask length of 30 bits. ThePCE 265 applies a 30-bit mask to the local IP address of 10.1.1.3 to obtain 10.1.1.0. ThePCE 265 designates 10.1.1.3 as the ID of thepseudo node 1020. ThePCE 265 creates a connection via thelink 1030 with the local IP address of 10.1.1.3 and the mask length of 30 bits between therouter 220 and thepseudo node 1020. Likewise, thePCE 265 creates a connection via thelink 1010 with the local IP address of 10.1.1.1 and the mask length of 30 bits between therouter 250 and thepseudo node 1020, and thePCE 265 creates a connection via thelink 1040 with the local IP address of 10.1.1.2 and the mask length of 30 bits between therouter 230 and thepseudo node 1020. - At
step 950, the BDR is designated as a new DR when the DR is disabled. For instance, therouter 220 is disabled due to its removal from therouting system 200, its powering down, or another cause. ThePCE 265 designates therouter 230 as the new DR. In addition, from among the remaining routers connected to thelink 245, thePCE 265 designates as a new BDR the router with the smallest local IP address or the largest local IP address. In this case, therouter 250 is the only remaining router, so it has either the smallest local IP address or the largest local IP address and therefore becomes the new BDR. Furthermore, thePCE 265 removes thelinks PCE 265 removes thelink 1030. Step 950 is optional and may not necessarily occur. Ifstep 950 occurs, it may not occur afterstep 940, but may instead occur at any other time when the DR is disabled. - Finally, at
step 960, a path is computed using the pseudo node. For instance, thePCE 265 computes a routing path using thepseudo node 1020. Computing the routing path using thepseudo node 1020 provides for more efficient computation in thePCE 265. -
FIG. 11 is a flowchart illustrating amethod 1100 of broadcast link advertisement according to an embodiment of the disclosure. A router, for instance therouter 220 in theAS 225, implements themethod 1100. Atstep 1110, information about a broadcast link connecting a first router to a second router in a second AS is obtained. The first router is in a first AS. For instance, therouter 220 obtains information about thelink 245, which connects therouter 220 in theAS 225 to therouter 250 in theAS 240. The information comprises any combination of theIPv4 address field 630,mask length field 640, theIPv6 address field 730, themask length field 740, the local ASnumber field 830, or the other sub-TLV information described above. - At
step 1120, a link state message comprising the information is generated. For instance, therouter 220 generates theinter-AS TE LSP 400 or theinter-AS TE LSA 500. Finally, atstep 1130, the link state message is transmitted to a third router. The third router is in the first AS and is adjacent to the first router. -
FIG. 12 is a flowchart illustrating amethod 1200 of pseudo node implementation according to another embodiment of the disclosure. A super node, for instance thePCE 265, implements themethod 1200. ThePCE 265 may do so using a TED. - At
step 1210, a first link state message is received from a first router. For instance, thePCE 265 receives theinter-AS TE LSP 400 or theinter-AS TE LSA 500 from therouter 220. Atstep 1220, a second link state message is received from a second router. For instance, thePCE 265 receives theinter-AS TE LSP 400 or theinter-AS TE LSA 500 from therouter 230. Atstep 1230, a third link state message is received from a third router. For instance, thePCE 265 receives theinter-AS TE LSP 400 or theinter-AS TE LSA 500 from therouter 250. - Finally, at
step 1240, it is determined which of the first router, the second router, and the third router are ASBRs connected to a broadcast link based on information in the first link state message, the second link state message, and the third link state message. For instance, thePCE 265 determines which of therouters link 245 and determines that thelink 245 is a broadcast link. ThePCE 265 may do so as described with respect to step 920 inFIG. 9 . -
FIG. 13 is a schematic diagram of anapparatus 1300 according to an embodiment of the disclosure. Theapparatus 1300 may implement the disclosed embodiments. Theapparatus 1300 comprises ingress ports 1310 and anRX 1320 for receiving data; a processor, logic unit, baseband unit, orCPU 1330 to process the data; aTX 1340 and egress ports 1350 for transmitting the data; and amemory 1360 for storing the data. Theapparatus 1300 may also comprise OE components, EO components, or RF components coupled to the ingress ports 1310, theRX 1320, theTX 1340, and the egress ports 1350 for ingress or egress of optical, electrical signals, or RF signals. - The
processor 1330 is any combination of hardware, middleware, firmware, or software. Theprocessor 1330 comprises any combination of one or more CPU chips, cores, FPGAs, ASICs, or DSPs. Theprocessor 1330 communicates with the ingress ports 1310,RX 1320,TX 1340, egress ports 1350, andmemory 1360. Theprocessor 1330 comprises apath computation component 1370, aTED 1380, and aninterface manager 1390, which implement the disclosed embodiments. The inclusion of thepath computation component 1370, theTED 1380, and theinterface manager 1390 therefore provides a substantial improvement to the functionality of theapparatus 1300 and effects a transformation of theapparatus 1300 to a different state. Alternatively, thememory 1360 stores thepath computation component 1370, theTED 1380, and theinterface manager 1390 as instructions, and theprocessor 1330 executes those instructions. - The
memory 1360 comprises any combination of disks, tape drives, or solid-state drives. Theapparatus 1300 may use thememory 1360 as an over-flow data storage device to store programs when theapparatus 1300 selects those programs for execution and to store instructions and data that theapparatus 1300 reads during execution of those programs. Thememory 1360 may be volatile or non-volatile and may be any combination of ROM, RAM, TCAM, or SRAM. - A first router in a first AS, the first router comprises: a processing element configured to: obtain information about a broadcast link connecting the first router to a second router in a second AS, and generate a link state message comprising the information; and a transmitting element coupled to the processing element and configured to transmit the link state message to a third router, wherein the third router is in the first AS and is adjacent to the first router.
- A first component is directly coupled to a second component when there are no intervening components, except for a line, a trace, or another medium between the first component and the second component. The first component is indirectly coupled to the second component when there are intervening components other than a line, a trace, or another medium between the first component and the second component. The term “coupled” and its variants include both directly coupled and indirectly coupled. The use of the term “about” means a range including ±10% of the subsequent number unless otherwise stated.
- While several embodiments have been provided in the present disclosure, it may be understood that the disclosed systems and methods might be embodied in many other specific forms without departing from the spirit or scope of the present disclosure. The present examples are to be considered as illustrative and not restrictive, and the intention is not to be limited to the details given herein. For example, the various elements or components may be combined or integrated in another system or certain features may be omitted, or not implemented.
- In addition, techniques, systems, subsystems, and methods described and illustrated in the various embodiments as discrete or separate may be combined or integrated with other systems, components, techniques, or methods without departing from the scope of the present disclosure. Other items shown or discussed as coupled may be directly coupled or may be indirectly coupled or communicating through some interface, device, or intermediate component whether electrically, mechanically, or otherwise. Other examples of changes, substitutions, and alterations are ascertainable by one skilled in the art and may be made without departing from the spirit and scope disclosed herein.
Claims (20)
1. A method comprising:
receiving link state messages from routers in a routing system; and
determining, based on the link state messages, autonomous system border routers (ASBRs) connected to a broadcast link.
2. The method of claim 1 , wherein the method is implemented by a path computation element (PCE).
3. The method of claim 1 , wherein each of the link state messages is an Intermediate System to Intermediate System (IS-IS) link state protocol data unit (LSP) or an Open Shortest Path First (OSPF) link state advertisement (LSA).
4. The method of claim 1 , wherein the routers are all routers in the routing system.
5. The method of claim 1 , wherein the routers are all routers connected to a link.
6. The method of claim 1 , wherein receiving the link state messages from the routers comprises receiving the link state messages directly from the routers.
7. The method of claim 1 , wherein receiving the link state messages from the routers comprises receiving the link state messages indirectly from the routers and through paths comprising multiple routers.
8. The method of claim 1 , further comprising further determining the ASBRs based on flags in the link state messages.
9. The method of claim 1 , further comprising determining that the ASBRs are connected to the broadcast link by obtaining local Internet Protocol (IP) addresses from the link state messages.
10. The method of claim 9 , further comprising further determining that the ASBRs are connected to the broadcast link by applying a mask to each of the local IP addresses to obtain masked IP addresses.
11. The method of claim 10 , further comprising further determining that the ASBRs are connected to the broadcast link by determining that the ASBRs are part of a link when the masked IP addresses corresponding to the ASBRs are the same.
12. The method of claim 11 , further comprising further determining that the ASBRs are connected to the broadcast link by determining that the link is the broadcast link when the link state messages corresponding to the ASBRs comprise sub-type-length-values (sub-TLVs) indicating a link type is multi-access.
13. The method of claim 1 , further comprising designating a designated router (DR) and a backup designated router (BDR) based on the link state messages.
14. The method of claim 13 , wherein designating the DR and the BDR comprises:
designating the DR as a first router from which one of the link state messages is received; and
designating the BDR as a second router from which another one of the link state messages is received.
15. The method of claim 13 , further comprising creating a pseudo node system comprising the ASBRs, a pseudo node, and virtual links, wherein the pseudo node is a virtual node that represents a center point among the ASBRs, and wherein the virtual links connect the ASBRs to the pseudo node.
16. The method of claim 15 , further comprising designating the BDR as a new DR when the DR is disabled.
17. The method of claim 15 , further comprising computing a routing path using the pseudo node.
18. An apparatus comprising:
a memory configured to store instructions; and
a processor coupled to the memory and configured to execute the instructions to cause the apparatus to:
receive link state messages from routers in a routing system; and
determine, based on the link state messages, autonomous system border routers (ASBRs) connected to a broadcast link.
19. The apparatus of claim 18 , wherein the processor is further configured to execute the instructions to cause the apparatus to determine the ASBRs connected to the broadcast link by:
determining the ASBRs based on flags in the link state messages;
obtaining local Internet Protocol (IP) addresses from the link state messages;
applying a mask to the local IP addresses to obtain masked IP addresses;
determining that the ASBRs are part of a link when the masked IP addresses corresponding to the ASBRs are the same; and
determining that the link is the broadcast link when the link state messages corresponding to the ASBRs comprise sub-type-length-values (sub-TLVs) indicating a link type is multi-access.
20. A computer program product comprising instructions that are stored on a computer-readable medium and that, when executed by a processor, cause an apparatus to:
receive link state messages from routers in a routing system; and
determine, based on the link state messages, autonomous system border routers (ASBRs) connected to a broadcast link.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/154,712 US20230179515A1 (en) | 2017-03-10 | 2023-01-13 | Routing protocol broadcast link extensions |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762469686P | 2017-03-10 | 2017-03-10 | |
US201762469692P | 2017-03-10 | 2017-03-10 | |
US15/901,494 US11558291B2 (en) | 2017-03-10 | 2018-02-21 | Routing protocol broadcast link extensions |
US18/154,712 US20230179515A1 (en) | 2017-03-10 | 2023-01-13 | Routing protocol broadcast link extensions |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/901,494 Continuation US11558291B2 (en) | 2017-03-10 | 2018-02-21 | Routing protocol broadcast link extensions |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230179515A1 true US20230179515A1 (en) | 2023-06-08 |
Family
ID=63445157
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/901,494 Active US11558291B2 (en) | 2017-03-10 | 2018-02-21 | Routing protocol broadcast link extensions |
US18/154,712 Pending US20230179515A1 (en) | 2017-03-10 | 2023-01-13 | Routing protocol broadcast link extensions |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/901,494 Active US11558291B2 (en) | 2017-03-10 | 2018-02-21 | Routing protocol broadcast link extensions |
Country Status (1)
Country | Link |
---|---|
US (2) | US11558291B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050073958A1 (en) * | 2003-10-03 | 2005-04-07 | Avici Systems, Inc. | Selecting alternate paths for network destinations |
CN101155135A (en) * | 2006-09-28 | 2008-04-02 | 华为技术有限公司 | Method and device for flooding autonomous system border router ability information |
US20100097925A1 (en) * | 2008-10-16 | 2010-04-22 | International Business Machines Corporation | Selective routing traffic controls and automated recovery among parallel multi-access interfaces |
US7936780B1 (en) * | 2008-03-12 | 2011-05-03 | Juniper Networks, Inc. | Hierarchical label distribution protocol for computer networks |
US8018873B1 (en) * | 2007-11-08 | 2011-09-13 | Juniper Networks, Inc. | Enhanced link state protocol for identifying broadcast networks |
US8125926B1 (en) * | 2007-10-16 | 2012-02-28 | Juniper Networks, Inc. | Inter-autonomous system (AS) virtual private local area network service (VPLS) |
US20160261501A1 (en) * | 2015-03-05 | 2016-09-08 | Juniper Networks, Inc. | Overload functionality in overlay networks |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003309595A (en) * | 2002-04-12 | 2003-10-31 | Fujitsu Ltd | Router and routing method in network |
EP2086189B1 (en) * | 2006-11-09 | 2014-01-01 | Huawei Technologies Co., Ltd. | A method and border node for advertising border connection information of a system |
US7804848B2 (en) * | 2007-02-28 | 2010-09-28 | Cisco Technology, Inc. | Setting a forwarding address in an internet protocol version 6 (IPv6) routing protocol domain at a boundary with a different routing protocol domain |
US9565027B2 (en) * | 2013-08-23 | 2017-02-07 | Futurewei Technologies, Inc. | Multi-destination traffic control in multi-level networks |
US10097372B2 (en) * | 2014-01-09 | 2018-10-09 | Ciena Corporation | Method for resource optimized network virtualization overlay transport in virtualized data center environments |
-
2018
- 2018-02-21 US US15/901,494 patent/US11558291B2/en active Active
-
2023
- 2023-01-13 US US18/154,712 patent/US20230179515A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050073958A1 (en) * | 2003-10-03 | 2005-04-07 | Avici Systems, Inc. | Selecting alternate paths for network destinations |
CN101155135A (en) * | 2006-09-28 | 2008-04-02 | 华为技术有限公司 | Method and device for flooding autonomous system border router ability information |
US8125926B1 (en) * | 2007-10-16 | 2012-02-28 | Juniper Networks, Inc. | Inter-autonomous system (AS) virtual private local area network service (VPLS) |
US8018873B1 (en) * | 2007-11-08 | 2011-09-13 | Juniper Networks, Inc. | Enhanced link state protocol for identifying broadcast networks |
US7936780B1 (en) * | 2008-03-12 | 2011-05-03 | Juniper Networks, Inc. | Hierarchical label distribution protocol for computer networks |
US20100097925A1 (en) * | 2008-10-16 | 2010-04-22 | International Business Machines Corporation | Selective routing traffic controls and automated recovery among parallel multi-access interfaces |
US20160261501A1 (en) * | 2015-03-05 | 2016-09-08 | Juniper Networks, Inc. | Overload functionality in overlay networks |
Also Published As
Publication number | Publication date |
---|---|
US11558291B2 (en) | 2023-01-17 |
US20180262426A1 (en) | 2018-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10541905B2 (en) | Automatic optimal route reflector root address assignment to route reflector clients and fast failover in a network environment | |
US11909596B2 (en) | Connections and accesses for hierarchical path computation element (PCE) | |
EP3200402B1 (en) | Segment routing information obtainment method and segment routing network establishment method | |
US9749214B2 (en) | Software defined networking (SDN) specific topology information discovery | |
US9660897B1 (en) | BGP link-state extensions for segment routing | |
US7460481B2 (en) | Inter-domain TE-LSP with IGP extensions | |
US9019865B2 (en) | Advertising traffic engineering information with the border gateway protocol | |
US7814227B2 (en) | Computation of a shortest inter-domain TE-LSP across a set of autonomous systems | |
US10469360B1 (en) | Reverse metric advertisement for border gateway protocol route reflection inhierarchical networks | |
JP5450665B2 (en) | LDPIGP synchronization for broadcast networks | |
EP2741546B1 (en) | Performance-based routing method and device | |
US10958559B2 (en) | Scaled inter-domain metrics for link state protocols | |
WO2020187308A1 (en) | Method for optimal routing in an inter-area srmpls igp network, nodes and system thereof | |
US10992567B2 (en) | Traffic engineering attribute for avoiding packet paths with signal degrade | |
US11805046B2 (en) | Border gateway protocol (BGP) for routing policy distribution | |
US20160142284A1 (en) | Establishing a multicast backup path | |
JP2022522175A (en) | Systems and methods for handling IGP flooding topology inconsistencies | |
US11303549B2 (en) | Segmented traceroute for segment routing traffic engineering | |
US20230179515A1 (en) | Routing protocol broadcast link extensions | |
WO2022042610A1 (en) | Information processing method, network controller, node and computer-readable storage medium | |
WO2020243465A1 (en) | Open shortest path first (ospf) service group dedicated databases | |
WO2020231740A1 (en) | Open shortest path first (ospf) service grouping capability, membership, and flooding | |
CN116800660A (en) | Method and device for generating forwarding table, storage medium and electronic device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: FUTUREWEI TECHNOLOGIES, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CHEN, HUAIMO;REEL/FRAME:063313/0658 Effective date: 20180202 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |