An autonomous system (AS) comprising a topology transparent zone (ttz) comprising a plurality of ttz nodes, wherein the plurality of ttz nodes includes an edge node and an internal node, wherein each of the plurality of ttz nodes is configured to connect to another ttz node via an internal link, and a plurality of neighboring external nodes connected to the ttz edge nodes via a plurality of external links, wherein no link state advertisements (LSAs) describing the internal links are distributed to the neighboring external nodes.
|
0. 24. An autonomous system (AS) comprising:
a topology transparent zone (ttz) comprising a first ttz edge node and a ttz internal node, wherein the first ttz edge node is connected to the ttz internal node via an internal link; and
an external node connected to the first ttz edge node via an external link, wherein the ttz edge node is configured to distribute:
a first link state advertisement (lsa) to the external node, the first lsa describing the external link but containing no information about the internal link to hide the internal link from the external node when the first lsa is received by the external node; and
a second lsa to the ttz internal node, the second lsa describing the external link and the internal link and including a lsa header, the lsa header containing a link state type field and a number of router link fields, wherein each router link field comprises a bit flag, denoted as an I bit flag, to indicate whether a link is external or internal with respect to the ttz.
13. A router used in an area network node within a topology transparent zone (ttz) of an autonomous system (AS) comprising:
a first port configured to connect to a first neighboring router network node via a first link;
a second port configured to connect to a second neighboring router network node via a second link;
a memory configured to store a topology graph comprising information regarding the first and second neighboring routers, network nodes and the first and second links,
wherein the router network node, the first neighboring router network node, and the second neighboring router network node are located within the area AS, and
wherein the first neighboring router does not contain any information regarding the second neighboring router or the second link, and
wherein the second neighboring router contains information regarding the first neighboring router and the first link; and
a processor configured to:
generate a first link state advertisement (lsa) comprising describing the first and second links;
send the first lsa to the second neighboring router network node;
generate a second lsa comprising describing the first link and a third link between the router network node and an additional router network node but containing no information about the second link to hide the second link from the first neighboring network node when the second lsa is received by the first neighboring network node; and
send the second lsa to the first neighboring router network node, and
wherein the additional router network node is also located within the area, and wherein the second neighboring router contains information regarding the additional router and the third link AS.
1. An autonomous system (AS) comprising:
a topology transparent zone (ttz) comprising a plurality of ttz nodes, wherein the plurality of ttz nodes comprises an a ttz edge node and an a ttz internal node, wherein each of the plurality of ttz nodes edge node is configured to connect to another the ttz internal node via an internal link; and
a plurality of neighboring external nodes connected to the ttz edge nodes node via a plurality of external links,
wherein no the ttz edge node is configured to distribute link state advertisements (LSAs) describing the internal links are distributed link to the ttz internal node but not to the neighboring external nodes,
wherein the ttz edge node is configured to distribute a plurality of first LSAs describing the plurality of external links are distributed to the plurality of neighboring external nodes, wherein the ttz edge node is configured to distribute a plurality of second LSAs describing the plurality of external links and the plurality of internal links are distributed link to each of the plurality of ttz nodes, and wherein each of the second LSAs comprises:
a lsa header comprising a link state type field specifying a router lsa type; and
a number of router link fields, wherein each router link field comprises a bit flag, denoted as an I bit flag, to indicate whether a link is external or internal with respect to the ttz.
9. A method of configuring a topology transparent zone (ttz) in an area of an autonomous system (AS), the method comprising:
assigning a same ttz identifier (ID) to a plurality of all internal links that interconnect a plurality of ttz nodes located within the ttz, wherein each of the plurality of internal links interconnects a pair of the plurality of ttz nodes, wherein the plurality of ttz nodes includes at least one edge node and at least one internal node;
sending a link state advertisement (lsa) from each of the at least one edge node via a plurality of external links to each of a plurality of neighboring external nodes located in the area within the AS, wherein each lsa comprises a lsa header containing a link state type field specifying a router lsa type and a number of router link fields, wherein each router link field comprises a bit flag, denoted as an I bit flag, to indicate whether a link is external or internal with respect to the ttz, and wherein each neighboring external node is connected to at least one of the edge nodes via at least one of the external links; and
updating topology graphs in the neighboring external nodes based on each lsa, wherein the topology graphs describe the ttz as the at least one edge router, and wherein the topology graphs do not contain any information regarding the at least one internal node or the plurality of internal links, wherein each lsa comprises:
a lsa header comprising a link state type field specifying a router lsa type; and
a number of router link fields, wherein each router link field comprises a bit flag, denoted as an I bit flag, to indicate whether a link is external or internal with respect to the ttz.
2. The AS of
3. The AS of
4. The AS of
5. The AS of
6. The AS of
7. The AS of
8. The AS of
10. The method of
11. The method of
12. The method of
14. The router network node of
15. The router network node of
16. The router network node of
0. 17. The network node of claim 13, wherein the information of the second link is not sent to the first neighboring network node.
0. 18. The network node of claim 13, wherein the first lsa is not sent to the first neighboring network node.
0. 19. The network node of claim 13, wherein the second lsa does not describe the information of the second link.
0. 20. The network node of claim 13, wherein the second neighboring network node contains information regarding the additional network node and the third link.
0. 21. The network node of claim 13, wherein the first lsa comprises:
a first router link field describing the first link, wherein the first router link field comprises a bit flag to indicate the first link is external to the ttz; and
a second router link field describing the second link, wherein the second router link field comprises a bit flag to indicate the second link is internal to the ttz.
0. 22. The network node of claim 13, wherein the first lsa comprises a number of router link fields, wherein each router link field comprises a bit flag, denoted as an I bit flag, to indicate whether a link is external or internal with respect to the ttz.
0. 23. The network node of claim 22, wherein an I bit flag of one indicates an internal link, and wherein an I bit flag of zero indicates an external link.
0. 25. The AS of claim 24, wherein an I bit flag of one indicates an internal link, and wherein an I bit flag of zero indicates an external link.
0. 26. The AS of claim 24, wherein the ttz further comprises a second ttz edge node that is not directly connected to the first ttz edge node, and wherein the first lsa describes a virtual link between the first ttz edge node and the second ttz edge node.
|
The present application is a Reissue Application of U.S. Pat. No. 8,976,711 B2 (issued on Mar. 10, 2015), which claims priority to U.S. Provisional Patent Application No. 61/545,050 filed Oct. 7, 2011 by Renwei Li et al. and entitled “System and Method for Simple Topology Transparent Zoning in Network Communications”, which is incorporated herein by reference as if reproduced in its entirety.
Not applicable.
Not applicable.
As more and more nodes (e.g., routers) are added into a conventional communications network, the size of the network increases, and issues such as scalability and slow convergence may arise. In communication networks such as the Internet, an autonomous system (AS) may have a common routing policy (either in a single network or in a group of networks) that is controlled by a network administrator (or group of administrators on behalf of a single administrative entity, such as a university, a business enterprise, or a business division). Within the Internet, an AS comprises a collection of routers exchanging routing information via a common routing protocol. Each AS on the Internet may be assigned a globally unique number, which is sometimes called an AS number (ASN).
In a network comprising a single autonomous system (AS) with a single area, each node needs to be aware of the positional relationships (i.e., adjacencies) of all other nodes, such that all nodes may build a topological map of the AS. Nodes may learn about one another's adjacencies by flooding link-state information throughout the network according to one or more interior gateway protocols (IGPs) including, but not limited to, open shortest path first (OSPF) or intermediate system (IS) to IS (IS-IS). Specifically, nodes engaging in IGPs may distribute their own link state advertisements (LSAs) describing their own adjacencies to all their neighboring nodes, which may forward the received LSAs to all their neighboring nodes (except the node from which the LSA was received). This may allow the LSA to be distributed throughout the network such that all network nodes become aware of one another's adjacencies, thereby allowing the various nodes to build topology graphs (e.g., link state databases (LSDBs)). LSAs may be flooded upon network initialization as well as whenever a network adjacency changes (e.g., a node is added/removed or a node/link fails). A network change may lead to every node in the network to re-compute a shortest path to each destination, to update its routing information base (RIB) and its forwarding information base (FIB). Consequently, as more nodes are added to a network, link state distributions and shortest path computations may begin to consume more and more network resources, such as bandwidth and/or processing time.
A prior art technique for addressing scalability and performance issues in large networks is to define smaller areas of IGP (e.g., OSPF areas or IS-IS areas/levels) in an attempt to reduce the number of LSAs that are flooded throughout the network. This technique has been described by various publications, such as the Internet Engineering Task Force (IETF) publication request for comments (RFC) 2328 entitled “OSPF Version 2” (describing OSPF areas in an AS) and IETF publication RFC 1142 entitled “Open Systems Interconnection (OSI) IS-IS Intra-domain Routing Protocol” (describing IS-IS areas/levels in an AS). Specifically, each OSPF/IS-IS area comprises a number of interconnected routers, including both area border routers (ABRs) and internal routers. An ABR may be distinguished from an internal router in that the ABR may be connected to routers in two or more OSPF/IS-IS areas, while an internal router in an OSPF/IS-IS area may be connected only to other routers within the OSPF/IS-IS area. In most applications, the ABRs and internal routers will execute a normal link state distribution (e.g., according to an IGP) within their respective local OSPF/IS-IS areas, thereby allowing the ABRs to collect and summarize topology information (e.g., construct summary LSAs) describing their local OSPF/IS-IS area. Thereafter, the ABRs may distribute these summary LSAs to other ABRs on a backbone, thereby allowing the ABRs in external domains to develop a complete or partial topological understanding of the OSPF/IS-IS areas along the backbone. Depending on the network configuration, these summarized LSAs for an OSPF/IS-IS area may or may not be distributed to internal routers within the other OSPF/IS-IS areas.
Through splitting a network into multiple areas, the network may be further extended. However, there are a number of issues when splitting a network into multiple areas. For example, dividing an AS into multiple ASs or an area into multiple areas may involve significant network architecture changes. For another example, it may be complex to setup a multi-protocol label switching (MPLS) traffic engineering (TE) label switching path (LSP) crossing multiple areas. In general, a TE path crossing multiple areas may be computed by using collaborating path computation elements (PCEs) through the PCE communication protocol (PCEP), which may not be easy to configure by operators since manual configuration of the sequence of domains is required. Further, the current PCE method may not guarantee that the path found would be optimal. For yet another example, some policies may need to be reconfigured on ABRs for reducing the number of link states such as summary link-state advertisements (LSAs) to be distributed to other routers in other areas.
Furthermore, route convergence may be slower. A router in an OSPF area may see all other routers in the same area. A link-state change anywhere in an OSPF area may be populated everywhere in the same area, and may even be distributed to other areas in the same AS indirectly. For instance, all the routers and links in a point-of-presence (POP) in an OSPF area may be seen by all the other routers in the same area. Any link state change in the POP may be distributed to all the other routers in the same area, and may also be distributed to routers in other areas indirectly. A link state change in an area may lead to every router in the same area to re-calculate its OSPF routes, update its RIB and FIB. It may also lead to a number of link state distributions to other areas, which may trigger routers in other areas to re-calculate their OSPF routes, and update their RIBs and FIBs. Consequently, route convergence may become slower. As such, a simple and efficient scheme to address the above issues (e.g., in large networks) may be desired.
In one embodiment, the disclosure includes an AS comprising a topology transparent zone (TTZ) comprising a plurality of TTZ nodes, wherein the plurality of TTZ nodes comprises an edge node and an internal node, wherein each of the plurality of TTZ nodes is configured to connect to another TTZ node via an internal link, and a plurality of neighboring external nodes connected to the TTZ edge nodes via a plurality of external links, wherein no link state advertisements (LSAs) describing the internal links are distributed to the neighboring external nodes.
In another embodiment, the disclosure includes a method of configuring a TTZ in an area of an AS, the method comprising assigning a TTZ identifier (ID) to a plurality of internal links that interconnect a plurality of TTZ nodes located within the TTZ, wherein each of the plurality of internal links interconnects a pair of the plurality of TTZ nodes, wherein the plurality of TTZ nodes includes at least one edge node and at least one internal node, sending a LSA from each of the at least one edge node via a plurality of external links to each of a plurality of neighboring external nodes located in the area, wherein each neighboring external node is connected to at least one of the edge nodes via at least one of the external links, and updating topology graphs in the neighboring external nodes based on each LSA, wherein the topology graphs do not contain any information regarding the at least one internal node or the plurality of internal links.
In yet another embodiment, the disclosure includes a router used in an area of an AS comprising a first port configured to connect to a first neighboring router via a first link, a second port configured to connect to a second neighboring router via a second link, and a topology graph configured to store information regarding the first and second neighboring routers, and the first and second links, wherein the first neighboring router and the second neighboring router are located within the area, wherein the first neighboring router does not contain any information regarding the second neighboring router or the second link, and wherein the second neighboring router contains information regarding the first neighboring router and the first link.
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.
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. While certain aspects of conventional technologies have been discussed to facilitate the present disclosure, applicants in no way disclaim these technical aspects, and it is contemplated that the present disclosure may encompass one or more of the conventional technical aspects discussed herein.
As the AS 100 grows larger and larger (e.g., comprising more and more nodes), scalability issues may arise, which may result from, for example, the inability of a large network to quickly compute a shortest path to every destination on each node, efficiently manage or distribute network topology information. For instance, the processing and storage capabilities of an individual node (e.g., node 132) may practically limit the size of the AS 100. Additionally, the ability to distribute link state information in a timely manner may be directly related to the number of nodes in which LSAs need to be exchanged/flooded. Consequently, larger networks may suffer from slower convergence. For example, larger networks may require a longer period required to build or update topology graphs, during which time data may be misdirected or lost.
Re-convergence in large networks may also be an issue, as the inability to timely recover from a fault in a node/link (or some other condition that changes a network adjacency subsequent to initialization) may disrupt network services, such as the traffic transported from node 110 to node 158 along the shortest path as shown in
Re-convergence periods may significantly impact the ability to timely recover from faults in a path, and therefore affect the maximum Quality of Service (QoS) level supported by the network. Specifically, a network fault may affect one or more paths, which may be broken until a recovery procedure can be completed. For instance, a fault in the node 134 or the link between the nodes 132 and 134 may cause the path (solid arrows) to be temporarily broken. In response to detecting the fault, one or more of the nodes 110-158 may flood LSAs throughout the network to inform the other nodes of the topological change (i.e., that the adjacency between the nodes 132 and 134 no longer exists, or is temporarily unavailable). Subsequently, one or more of the nodes 110-158 may recompute a shortest path to every destination, update the RIB and FIB. Only after every node in the network receives the LSAs about the fault, recomputed the shortest path to every destination, and update the RIB and FIB, can transportation of the network traffic resume to normal. Hence, re-convergence periods directly affect the ability to timely recover from faults, and therefore substantially affect the ability of networks to meet QoS requirements of their various service agreements.
As discussed above, prior art techniques for dealing with scalability/convergence issues in large networks involve defining a plurality of OSPF/IS-IS areas within an AS.
The area 210 may comprise a plurality of area border nodes 212, 214, 216, 218, 220, and 222, each of which may, for example, be an area border router (ABR). The area 210 may further comprise one or more internal nodes 224, 226, 227, and 228. Each area border node (e.g., node 212) is connected to nodes in at least two areas (e.g., node 240 in area 230 and node 224 in area 210), while each internal node (e.g., node 224) is connected only to nodes inside an area (e.g., nodes 224 and 222 inside area 210). The area border nodes 212 and 214 may also serve as area border nodes of the area 230, which shares the nodes 212 and 214 with the area 210. The area 230 may further comprise a plurality of internal nodes 232, 234, 236, and 238, which may be configured similar to the internal nodes 224-228 in the area 210. The other areas 250-290 may each comprise a plurality of border nodes as well as a plurality of internal routers, and the configuration of the areas 250-290 is similar to the area 230. For example, the area 250 may comprise the area border node 216 and a plurality of internal nodes 252, 254, 256, 258, and 260.
LSAs comprising local link state information relevant to the area 210 may be distributed (e.g., flooded) to all the nodes 212-228 within the area 210, but not to internal nodes located in other areas, such as the nodes 232-242 in the area 230. Accordingly, the area border nodes 212-222 may collect and summarize the local link state information in area 210 into a summary LSA, and subsequently forward the summary LSA to relevant external nodes. For example, the area border nodes 212 and 214 may forward the summary LSA to the internal nodes 232-242 in the area 230. The other border nodes, such as node 216, may flood the summarized LSAs throughout their relevant area(s), such as the area 250.
As shown in
Further, as the number of nodes in an AS, such as the AS 200 which already comprises a plurality of areas, continues to grow, the AS may need to be divided into a plurality of autonomous systems (ASs).
More nodes may be added into the AS 300 and form additional areas 370 and 390, as shown in
Disclosed herein are systems and methods for creating one or more topology transparent zones (TTZs) in an AS to better address issues such as scalability and slow convergence, while maintaining simplicity of implementation. Specifically, a TTZ disclosed herein may be configured in an area of the AS. The TTZ may comprise a plurality of TTZ nodes including at least one edge node and at least one internal node. The disclosed TTZ may further comprise a number of internal links between internal and/or edge nodes. The edge nodes may be connected to a number of nodes outside the TTZ, which are herein referred as external nodes, via a number of external links. The links discussed herein may be any type of electrical or optical link for transporting data. Information regarding the external nodes and the external links are distributed or flooded to each TTZ node. In an embodiment, information regarding the internal nodes and the internal links may only be distributed within the TTZ via LSAs. Consequently, link state distributions throughout the AS may be reduced. In practice, implementation of one or more TTZs may be more effective in reducing link state distributions than networks implementing OSPF/IS-IS areas, while being less complex than networks implementing PCE Communication Protocol (PCEP) for computing a path for Multi-Protocol Label Switching Traffic Engineering LSP (MPLS TE LSP) crossing multiple areas or ASs. Further, nodes within the TTZ have a topological understanding of the AS as a whole. Consequently, LSPs can be computed without relying on intermediaries (e.g., PCEs). As such, the TTZ techniques described herein may allow for improved network performance, including increased scalability, faster re-convergence, better performance, and reduced processing consumption, while still allowing paths for LSPs to be computed simply.
The TTZ 460 may comprise a plurality of TTZ nodes including a number of TTZ edge nodes 461, 463, 465 and 467, and a number of TTZ internal nodes 470, 472, 474, 476, 478, and 480. As used herein, both TTZ edge nodes and TTZ internal nodes may be referred to as TTZ nodes. Each of the TTZ edge nodes 461, 463, 465 and 467 may be connected to at least one node outside of the TTZ 460. For instance, the TTZ edge node 461 may be connected to the node 415. The TTZ internal nodes from 470 to 480 may not be directly connected to any node outside of the TTZ 460. For instance, the TTZ internal node 472 is directly connected to TTZ nodes 461, 465, 476, and 480, but not to any node outside the TTZ 460.
Link state information relevant only to the inner-topology of the TTZ 460 (e.g., concerning internal links or adjacencies between pairs of TTZ nodes) may be flooded only within the TTZ 460 (i.e., not distributed to nodes outside the TTZ 460). Information regarding the inner-topology may be stored in topology graphs. Hence, the nodes 411-431 may not receive LSAs describing the TTZ's 460 inner-topology, and as a result may not be able to see or perceive the TTZ's 460 inner-topology. Instead, as shown in
The TTZ 460 may be assigned a TTZ identifier (ID), which may be similar to a router ID. The TTZ 460 may be formed after every link inside the TTZ 460 is configured with the same TTZ ID (e.g., the nodes on both sides of each internal link associate the link with the TTZ ID). For instance, as shown in
As shown in
In an embodiment, each of the edge nodes 461, 463, 465, and 467 may be seen as being directly connected to a pseudo node. That is, from the perspective of the external nodes 411-431, the edge nodes 461-467 may be seen as all connected to the pseudo node. In addition, each of the edge nodes 461-467 may be directly connected to at least one of the external nodes 411-431.
From the perspective of an edge node or router, such as the edge node 461, the edge router may be regarded as connected to each of a plurality of neighboring routers via a link, wherein the plurality of routers comprises a first neighboring router (i.e., an external router) and a second neighboring router (i.e., an internal router). The edge router may comprise a first port configured to connect to the first neighboring router via a first link, and a second port configured to connect to the second neighboring router via a second link. The edge router may further comprise a topology graph/table configured to store information regarding the first and second neighboring routers, and the first and second links. In an embodiment, a topology graph/table stored in the first neighboring router does not contain any information regarding the second neighboring router or the second link, which is an internal link. On the other hand, a topology graph/table stored in the second neighboring router may contain information regarding the first neighboring router and the first link, which is an external link.
Further, the edge router may be configured to generate a first LSA to describe the first link and the second link, and send the first LSA to the second neighboring router. The edge router may be further configured to generate a second LSA to describe the first link and one or more additional links between the edge router and other edge routers of the TTZ 460. Some or all of the additional links may be virtual links, each of which indicates an indirect connection between two edge routers, such as the edge node 461 and the edge node 467 (not directly connected). In one embodiment, a cost of a link between two edge routers may be the cost of the shortest path between the two edge routers. The edge router may be configured to send the second LSA to the first neighboring router. In another embodiment, a forwarding adjacency may be established between every two edge routers (i.e., a pair of edge routers), and a cost of a link between the two edge nodes may be set to a predetermined or fixed value, such as one.
Incorporating a TTZ into an area may help improve availability of the area. Suppose, for example, an internal link between two internal nodes 472 and 480 become broken or faulty. In this case, since external nodes (i.e., outside the TTZ 460) may not have any information regarding the internal nodes 472 and 480, the external nodes may not need to update or recalculate their routing tables (e.g., RIB and/or FIB) due to the broken link between the internal nodes 472 and 480. Instead, only nodes within the TTZ 460 may recalculate their routing tables. As a result, the scale of routing table recalculation may become smaller. Although a broken link is described as an example, it should be noted that a broken internal node (e.g., the node 472) may also only lead to updating of routing tables within the TTZ 460.
One application of the TTZ techniques described herein may be to configure a point-of-presence (POP) (e.g., a floor or a room of routers) as a TTZ, in which case the entire POP may behave as a plurality of edge routers (i.e., the internal routers/links in the POP are hidden from external nodes). As is the case with other implementations, the TTZ approach described herein may allow for greater scalability (e.g., backbone/non-backbone areas and TTZ as opposed to just backbone/non-backbone areas), simpler computation/establishment of LSPs, faster routing re-convergence (e.g., after a fault or a broken link or node), improved performance, and higher availability in POP applications.
In an area comprising one or more disclosed TTZs, conventional functionalities such as end-to-end traffic engineering (TE) label switched path (LSP) may be setup without any added complexity.
As mentioned previously, in a conventional network, as the number of nodes in an area continuous to grow (e.g., as illustrated in
In practice, each node in the area 801 may build or compute a shortest path first (SPF) tree using topology it sees or perceives. From the perspective of an external node (e.g., the node 817), each of the plurality of TTZs (e.g., the TTZ 860) may simply behave as a collection of normal nodes (e.g., the nodes 861-867), as shown in
Similarly, the incorporation of one or more TTZs may also help avoid separation of one AS into multiple ASs.
The Flags 1030 may indicate the characteristics of a router that originates the LSA 1000, and may comprise a virtual link (V) bit 1031, an External (E) bit 1032, and a Border (B) bit 1033. The V bit 1031 may be set to a predetermined value (e.g., one) to indicate that the source router is an endpoint of one or more fully adjacent virtual links. The E bit 1032 may be set to a predetermined value (e.g., one) to indicate that the source router is an AS boundary router. The B bit 1033 may be set to a predetermined value (e.g., one) to indicate that the source router is an ABR. The Number of Links field 1040 may be a 16-bit number and may indicate the number of router links that are described in the Router Links fields 1051. The Router Links fields 1051 may comprise a Router Link field for each of the router links in the source router's area (e.g., the TTZ). Each Router Link field 1051 may describe an individual router link in the TTZ.
In an embodiment, the I bit flag 1111 may be set to about one to indicate that the link is an internal link in a TTZ, or to about zero to indicate that the link is an external link. Consequently (in such an embodiment), the link type 1100 may have the same value as a conventional link type, e.g., when the link is an external link (i.e., a link outside the TTZ) and the I bit flag field 1111 is set to zero. Additionally, the link type 1100 may have a value that is one bit different from the conventional link type, e.g., when the link is an internal link (i.e., a link inside the TTZ) and the value of the I bit flag field 1111 is set to one.
In an alternative embodiment, the I bit flag 1111 may be set to about zero to indicate that the link is an internal link in a TTZ, or to about one to indicate that the link is an external link. Consequently (in such an embodiment), the link type 1100 may have the same value as a conventional link type when the link is an internal link, or a value that is one bit different from the conventional link type when the link is an external link. As a further alternative, a new field for a TTZ ID may be added into a router link to indicate which TTZ the link belongs to. The new field may be set to about zero to indicate that the corresponding link is a link connecting to a node outside of the TTZ, or to a non-zero value (e.g., a TTZ ID corresponding to a TTZ) to indicate that the link belongs to which TTZ.
In an embodiment, another router LSA 1230, as shown in
In an embodiment, yet another router LSA 1250, as shown in
Next, the method 1300 may proceed to step 1330, where each TTZ edge node may independently construct a router LSA describing each of the external links, and distribute the router LSA to the neighboring external nodes to which it is interconnected. The router LSA may specify a router ID of the originating router. Next, the method 1300 may proceed to step 1340, where the TTZ edge nodes may flood any LSAs received from the neighboring external nodes throughout the TTZ, thereby allowing the TTZ nodes to develop a topological understanding of the AS topology. In some embodiments, the TTZ edge nodes may also distribute LSA received from neighboring external nodes to other neighboring external nodes as may be consistent with the IGP implemented in the AS. Although
Next, the method 1300 may proceed to step 1350, where LSDBs describing the TTZ's inner-topology and the AS topology may be built in each of the TTZ nodes, thereby allowing the TTZ nodes to develop a topological understanding of the both TTZ's inner-topology and the AS topology. Finally, the method may proceed to step 1360, where each of the TTZ nodes computes the shortest path to each of the destinations, which include destinations in the TTZ and destinations outside of the TTZ.
The schemes described above may be implemented on any general-purpose network component, such as a computer or network component with sufficient processing power, memory resources, and network throughput capability to handle the necessary workload placed upon it.
The secondary storage 1504 is typically comprised of one or more disk drives or tape drives and is used for non-volatile storage of data and as an over-flow data storage device if the RAM 1508 is not large enough to hold all working data. The secondary storage 1504 may be used to store programs that are loaded into the RAM 1508 when such programs are selected for execution. The ROM 1506 is used to store instructions and perhaps data that are read during program execution. The ROM 1506 is a non-volatile memory device that typically has a small memory capacity relative to the larger memory capacity of the secondary storage 1504. The RAM 1508 is used to store volatile data and perhaps to store instructions. Access to both the ROM 1506 and the RAM 1508 is typically faster than to the secondary storage 1504. At least one of the secondary storage 1504 or RAM 1508 may be configured to store routing tables, forwarding tables, or other tables or information disclosed herein.
It is understood that by programming and/or loading executable instructions onto the node 1400, at least one of the processor 1420 or the memory 1422 are changed, transforming the node 1400 in part into a particular machine or apparatus, e.g., a router, having the novel functionality taught by the present disclosure. Similarly, it is understood that by programming and/or loading executable instructions onto the node 1500, at least one of the processor 1502, the ROM 1506, and the RAM 1508 are changed, transforming the node 1500 in part into a particular machine or apparatus, e.g., a router, having the novel functionality taught by the present disclosure. It is fundamental to the electrical engineering and software engineering arts that functionality that can be implemented by loading executable software into a computer can be converted to a hardware implementation by well-known design rules. Decisions between implementing a concept in software versus hardware typically hinge on considerations of stability of the design and numbers of units to be produced rather than any issues involved in translating from the software domain to the hardware domain. Generally, a design that is still subject to frequent change may be preferred to be implemented in software, because re-spinning a hardware implementation is more expensive than re-spinning a software design. Generally, a design that is stable that will be produced in large volume may be preferred to be implemented in hardware, for example in an ASIC, because for large production runs the hardware implementation may be less expensive than the software implementation. Often a design may be developed and tested in a software form and later transformed, by well-known design rules, to an equivalent hardware implementation in an application specific integrated circuit that hardwires the instructions of the software. In the same manner as a machine controlled by a new ASIC is a particular machine or apparatus, likewise a computer that has been programmed and/or loaded with executable instructions may be viewed as a particular machine or apparatus.
At least one embodiment is disclosed and variations, combinations, and/or modifications of the embodiment(s) and/or features of the embodiment(s) made by a person having ordinary skill in the art are within the scope of the disclosure. Alternative embodiments that result from combining, integrating, and/or omitting features of the embodiment(s) are also within the scope of the disclosure. Where numerical ranges or limitations are expressly stated, such express ranges or limitations should be understood to include iterative ranges or limitations of like magnitude falling within the expressly stated ranges or limitations (e.g., from about 1 to about 10 includes, 2, 3, 4, etc.; greater than 0.10 includes 0.11, 0.12, 0.13, etc.). For example, whenever a numerical range with a lower limit, R1, and an upper limit, Ru, is disclosed, any number falling within the range is specifically disclosed. In particular, the following numbers within the range are specifically disclosed: R=R1+k*(Ru−R1), wherein k is a variable ranging from 1 percent to 100 percent with a 1 percent increment, i.e., k is 1 percent, 2 percent, 3 percent, 4 percent, 5 percent, . . . , 70 percent, 71 percent, 72 percent, . . . , 95 percent, 96 percent, 97 percent, 98 percent, 99 percent, or 100 percent. Moreover, any numerical range defined by two R numbers as defined in the above is also specifically disclosed. The use of the term about means±10% of the subsequent number, unless otherwise stated. Use of the term “optionally” with respect to any element of a claim means that the element is required, or alternatively, the element is not required, both alternatives being within the scope of the claim. Use of broader terms such as comprises, includes, and having should be understood to provide support for narrower terms such as consisting of, consisting essentially of, and comprised substantially of. Accordingly, the scope of protection is not limited by the description set out above but is defined by the claims that follow, that scope including all equivalents of the subject matter of the claims. Each and every claim is incorporated as further disclosure into the specification and the claims are embodiment(s) of the present disclosure. The discussion of a reference in the disclosure is not an admission that it is prior art, especially any reference that has a publication date after the priority date of this application. The disclosure of all patents, patent applications, and publications cited in the disclosure are hereby incorporated by reference, to the extent that they provide exemplary, procedural, or other details supplementary to the disclosure.
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, modules, techniques, or methods without departing from the scope of the present disclosure. Other items shown or discussed as coupled or directly coupled or communicating with each other 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.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
5666652, | Jul 17 1995 | Google Technology Holdings LLC | Method and apparatus for controlling zone registrations in a radio communication system |
6085102, | Aug 29 1997 | Motorola, Inc | Method and apparatus for providing coverage in a selective messaging system |
6483833, | Jun 19 1998 | RPX CLEARINGHOUSE LLC | Method for transmitting label switching control information using the open shortest path first opaque link state advertisement option protocol |
6771651, | Sep 29 2000 | RPX CLEARINGHOUSE LLC | Providing access to a high-capacity packet network |
6801496, | Jan 15 1999 | Cisco Systems, Inc | Network addressing scheme for reducing protocol overhead in an optical network |
6980524, | May 20 1999 | Intellectual Ventures Holding 19, LLC | Methods and apparatus for routing in a mobile ad hoc network |
7002917, | Jan 15 1999 | Cisco Technology, Inc | Method for path selection in a network |
7457277, | Sep 20 2002 | Microsoft Technology Licensing, LLC | System and method for network layer protocol routing in a peer model integrated optical network |
7603671, | Nov 04 2005 | Oracle America, Inc | Performance management in a virtual computing environment |
8018873, | Nov 08 2007 | Juniper Networks, Inc | Enhanced link state protocol for identifying broadcast networks |
8238338, | Sep 14 2007 | Cisco Technology, Inc | Interior gateway protocol summarization preserving internet protocol reachability information |
8659658, | Feb 09 2010 | Microsoft Technology Licensing, LLC | Physical interaction zone for gesture-based user interfaces |
8964732, | Mar 25 2011 | Futurewei Technologies, Inc. | System and method for topology transparent zoning in network communications |
9306808, | Mar 25 2011 | FUTUREWEI TECHNOLOGIES, INC | System and method for topology transparent zoning in network communications |
20030014540, | |||
20030016678, | |||
20040226015, | |||
20050025069, | |||
20050068968, | |||
20050152284, | |||
20060056328, | |||
20060098657, | |||
20060268739, | |||
20070002738, | |||
20080101385, | |||
20090172190, | |||
20100322244, | |||
CN101568124, | |||
CN1411214, | |||
CN1889517, | |||
WO2008055539, | |||
WO2010148500, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Mar 10 2017 | Futurewei Technologies, Inc. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Feb 19 2019 | PTGR: Petition Related to Maintenance Fees Granted. |
Aug 24 2022 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Date | Maintenance Schedule |
Jun 14 2025 | 4 years fee payment window open |
Dec 14 2025 | 6 months grace period start (w surcharge) |
Jun 14 2026 | patent expiry (for year 4) |
Jun 14 2028 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 14 2029 | 8 years fee payment window open |
Dec 14 2029 | 6 months grace period start (w surcharge) |
Jun 14 2030 | patent expiry (for year 8) |
Jun 14 2032 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 14 2033 | 12 years fee payment window open |
Dec 14 2033 | 6 months grace period start (w surcharge) |
Jun 14 2034 | patent expiry (for year 12) |
Jun 14 2036 | 2 years to revive unintentionally abandoned end. (for year 12) |