WO2010051242A1 - Method and apparatus for reflecting forwarding plane utilization in a control plane - Google Patents

Method and apparatus for reflecting forwarding plane utilization in a control plane Download PDF

Info

Publication number
WO2010051242A1
WO2010051242A1 PCT/US2009/062014 US2009062014W WO2010051242A1 WO 2010051242 A1 WO2010051242 A1 WO 2010051242A1 US 2009062014 W US2009062014 W US 2009062014W WO 2010051242 A1 WO2010051242 A1 WO 2010051242A1
Authority
WO
WIPO (PCT)
Prior art keywords
oversubscription
interface
oversubscription factor
factor
control plane
Prior art date
Application number
PCT/US2009/062014
Other languages
French (fr)
Inventor
Scott R. Kotrla
Christopher N. Delregno
Matthew W. Turlington
Original Assignee
Verizon Patent And Licensing Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Verizon Patent And Licensing Inc. filed Critical Verizon Patent And Licensing Inc.
Priority to CN2009801435192A priority Critical patent/CN102203836B/en
Priority to EP09824045.0A priority patent/EP2345016B1/en
Publication of WO2010051242A1 publication Critical patent/WO2010051242A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Definitions

  • FIG. 1 is a diagram of a system capable of providing link sharing among logical routers
  • FIG. 2 is a diagram of a physical router implementing multiple logical routers, according to various exemplary embodiments
  • FIG. 3 is a diagram of a router including multiple control planes utilizing a common forwarding plane, according to an exemplary embodiment
  • FIG. 4 is a flowchart of a process for sampling forwarding plane utilization and calculating an oversubscription factor of a control plane based on the sampled forwarding plane utilization and a target forwarding plane utilization, according to an exemplary embodiment
  • FIG. 5A is a flowchart of a process for determining whether a change in the oversubscription factor over an oversubscription decrease interval or over an oversubscription factor increase interval warrants consideration for an update in the oversubscription factor, according to an exemplary embodiment
  • FIG. 5B is a flowchart of a process for changing an advertised bandwidth of the control plane based upon updating of the oversubscription factor to the new oversubscription factor, according to an exemplary embodiment
  • FIG. 6 is a diagram of a computer system that can be used to implement various exemplary embodiments. DESCRIPTION OF THE PREFERRED EMBODIMENT
  • An approach is provided of reflecting forwarding plane utilization in a dynamic control plane with bandwidth reservation by sampling forwarding plane utilization and changing advertised control plane bandwidths by changing the oversubscription factor on an interface used for Call Admission Control (CAC) in real time to compensate for differences in expected and measured forwarding plane utilization, which can also be applied to solving bandwidth reservation problems with ships-in-the-night routing.
  • CAC Call Admission Control
  • MPLS Multiprotocol Label Switching
  • FIGs. 1 and 2 are, respectively, a diagram of a system capable of providing link sharing among logical routers, and a diagram of a physical router implementing multiple logical routers, according to various exemplary embodiments.
  • a communication system 100 includes a networking device 101, such as a router (or routing platform) that provides connectivity between the one or more networks 103a-103n.
  • the router 101 comprises one or more physical and/or logical routers 105a-105n with corresponding traffic engineering databases 107a-107n. Assuming routers 105a-105n encompass logical routers, such logical routers may be Software Logical Routers (SLRs) or Hardware Logical Routers (HLRs).
  • SLRs Software Logical Routers
  • HLRs Hardware Logical Routers
  • the logical routers in a sense are similar to physical routers in that they possess their own set of hardware and software resources (e.g., processors, line cards, configuration, interfaces, and protocols).
  • the networks 103a-103n can be Multi Protocol Label Switching (MPLS) networks.
  • MPLS provides for efficient transport of traffic flows between different hardware platforms as well as different applications. Traffic engineering, within an MPLS network, is provided through the use of label switched paths (LSPs), which are created independently based on user-defined policies.
  • LSPs label switched paths
  • LSPs label-switched paths
  • RSVP Resource Reservation Protocol
  • LDP label distribution protocol
  • IP Internet Protocol
  • MPLS can map IP addresses to fixed-length labels for processing by packet-forwarding or packet-switching platforms.
  • MPLS which is independent of Layer 2 and Layer 3 protocols, can support a variety of protocols. Accordingly, these networks 103a-103n may further utilize network elements employing a host of technologies, including Gigabit Ethernet, frame relay, Asynchronous Transfer Mode (ATM), Fiber Distributed Data Interface (FDDI), synchronous optical network (SONET), etc.
  • ATM Asynchronous Transfer Mode
  • FDDI Fiber Distributed Data Interface
  • SONET synchronous optical network
  • the router 101 operates at the physical layer, link layer and network layer of the Open Systems Interconnection (OSI) model to transport data across the network 100.
  • OSI Open Systems Interconnection
  • the router 101 can determine the "best" paths or routes by utilizing various routing protocols. Routing tables are maintained by each router for mapping input ports to output ports using information from routing protocols. Exemplary routing protocols include Border Gateway Protocol (BGP), Interior Gateway Routing Protocol (IGRP), Routing Information Protocol (RIP), Open Shortest Path First (OSPF), and Intermediate System to Intermediate System (IS-IS).
  • Border Gateway Protocol BGP
  • IGRP Interior Gateway Routing Protocol
  • RIP Routing Information Protocol
  • OSPF Open Shortest Path First
  • IS-IS Intermediate System to Intermediate System
  • the router 101 can provide various other functions, such as firewalling, encryption, etc. It is noted that the label distribution can also involve piggybacking on the BGP or OSPF routing protocols.
  • the router functions can be performed using a general purpose computer (e.g., as shown in FIG. 6), or be highly specialized hardware platform with greater processing capability to process high volumes of data and hardware redundancies to ensure high reliability.
  • the logical routers 105a-105n can work independently with any of the above internetworking protocols.
  • the router 101 includes a messaging bus 201 for permitting the exchange of messages between the logical routers 105a-105n and a shared forwarding plane 203.
  • a forwarding plane 203 couples to one or more ports 205a-205n to process packets received over these ports 205a-205n by determining addressing information for destination nodes or devices. Additionally, these ports 205a-205n can provide multiple logical ports (LPs).
  • LPs logical ports
  • the forwarding plane 203 uses a forwarding table to determine a communication path to the destination node.
  • the forwarding table entries are populated by the forwarding information base entries received from the plurality of logical routers based on the routing tables contained therein.
  • hardware resources are dedicated to each logical router.
  • Hardware separated logical routers could also share logical interfaces as well.
  • no such dedication of physical resources to each logical router is required.
  • separate logical routers can share the same physical network port, with separation occurring at Layer 2 via Ethernet VLANs (virtual local area networks), ATM VCCs (Asynchronous Transfer Mode Virtual Channel Connections), Frame Relay DLCIs (data link connections), etc.
  • each Layer 2 logical channel could utilize the entire capacity of the port (e.g., port 205a).
  • each logical router is forwarding large volumes of traffic across their individual logical port, congestion and packet loss can occur.
  • MPLS traffic engineering has no mechanism for representing congestion and packet loss in the traffic engineering information distributed to the network, traditionally each logical router would have no knowledge regarding whether the sum of all of the logical routers' bandwidth reservations could exceed the port capacity.
  • FIG. 3 is a diagram of a router 101 including multiple control planes 301a, 301b, ... 30 In, utilizing a common forwarding plane 203, according to an exemplary embodiment.
  • the logical routers 105a-105n are described in a Traffic-Engineered (TE) Multiprotocol Label Switching (MPLS) environment.
  • TE Traffic-Engineered
  • MPLS Multiprotocol Label Switching
  • the router 101 includes forwarding plane hardware 203 that is shared by two or more logical routing entities, i.e., logical routers 105a-105n.
  • logical routers 105a-105n Traditionally, routers utilize a single control-plane entity and a single forwarding plane entity.
  • a N:l relationship is established among control plane entities 301a-301n and the forwarding plane 203.
  • This arrangement allows a single routing platform to appear as multiple logical routing platforms to the network 100. Consequently, the sharing of a single hardware platform among several routing functions or services can be achieved.
  • the approach of router 101 involves an advertised bandwidth update message exchange between the forwarding plane 203 and the control planes 301a-301n. In one embodiment, the mechanism for exchanging such capacity information is locally implemented, thereby requiring no protocol exchange between the logical routers 105a-105n.
  • OSPF Open Shortest Path First
  • IS-IS Intermediate System to Intermediate System
  • LSPs Traffic-Engineered Label Switched Paths
  • Sub-TLVs (Type-Length-Values) have been defined to identify the link in question, color or administrative group of the link, the link's Maximum Bandwidth, the link's (Maximum) Reservable Bandwidth, the link's Unreserved Bandwidth and the link's TE -metric or cost.
  • This information can be distributed throughout the network for all links so that each router in the network is aware of the entire topology of the network. As LSPs are signaled using this information and bandwidth is reserved, the routers in the LSP path update the Unreserved Bandwidth (UnRsvBW) value and send this updated information out to the other routers in the network. Accordingly, any ingress label switch router can determine where to place future LSPs based on lowest metric cost and bandwidth availability.
  • UnRsvBW Unreserved Bandwidth
  • the other networks may consider this link as a viable candidate for LSP placement even though it now has an available bandwidth that is less (i.e., MaxBW - X).
  • MaxBW - X a mechanism is needed to alert all the local LRs that are sharing a port that the advertised capacity has now changed, so that these LRs can update their Traffic Engineering Databases (TED) and router neighbors.
  • TED Traffic Engineering Databases
  • the system 100 provides real-time modification of oversubscription factors to achieve network goals of high utilization with low loss.
  • oversubscription and CAC can happen at multiple different layers; and these processes described herein can apply to any of those layers.
  • LSPs are assigned to physical interfaces and pseudowires (PWs) are assigned to LSPs.
  • PWs pseudowires
  • oversubscription of physical interfaces means that the aggregate of LSP bandwidths across an interface exceeds the physical bandwidth of the interfaces.
  • oversubscription of LSPs provides that the aggregate of the PW bandwidths across an LSP exceeds the bandwidth signaled by the LSP.
  • the first major issue addressed is that of forwarding plane utilization not equaling control plane bandwidth defined by CAC.
  • CAC control plane bandwidth
  • the control plane will allow twenty IG LSPs to be signaled across the interface.
  • the network operator may expect that, on average, the utilization of each IG LSP will be about 500M (i.e., IG / oversubscription factor).
  • the actual utilization of the LSP could be in a first case 250M or it could be in a second case IG.
  • the second major issue addressed is that of multiple control planes reserving bandwidth on a single physical interface independently without knowledge of the other control planes in a ships-in-the -night routing architecture.
  • the forwarding plane utilization of flows signaled by one control plane are consistent with the signaled bandwidth
  • the total forwarding plane utilization of flows signaled by all control planes cannot be controlled well.
  • each control plane would see the interface as being only 50% full, even though there is no bandwidth remaining on the interface. If the oversubscription of both networks is reduced to accommodate for this issue, then bandwidth will be wasted if the networks do not consume the same proportions of bandwidth across all network interfaces.
  • Both of the above problems result from the same basic problem, namely, that the forwarding plane utilization and the control plane bandwidth defined by CAC are not consistent.
  • the system 100 solves these problems by taking measurements of forwarding plane utilization on an interface, and updating the control plane oversubscription bandwidths for that interface based on the differences between measured and expected behavior.
  • FIG. 4 is a flowchart of a process 400 for sampling forwarding plane utilization and calculating an oversubscription factor of a control plane based on the sampled forwarding plane utilization and a target forwarding plane utilization, according to an exemplary embodiment.
  • the process 400 generally occurs during a predetermined sampling interval, which can be set to any desired frequency, and can be repeated for as long as desired.
  • a first oversubscription factor (Of ⁇ rst) of the control plane is set for the interface.
  • the first over subscription value (which can be considered an initial oversubscription value (Oi) at the initiation of the first iteration of the processes described herein) can be set based on an estimation of the utilization, or can be set based on a baseline of historical data regarding previous utilization.
  • a forwarding plane sampling interval (Ifp) is started, and a control plane bandwidth (BWcps) is recorded or sampled at the start of the forwarding plane sampling interval.
  • This process can use any methods of measuring forwarding plane utilization, for example, using existing network hardware to varying degrees of accuracy and measurement duration, or using other methods.
  • the forwarding plane sampling interval is ended, and a forwarding plane bandwidth (BWfpm) is measured.
  • a second oversubscription factor (Osecond) for the sampling interval is calculated.
  • the control plane oversubscription bandwidths for the interface can be determined based on the differences between measured and expected behavior using the following relationship:
  • BWcps is the control plane bandwidth signaled in Gbps; O is the oversubscription factor; BWi is the interface bandwidth in Gbps; Ufpt is the target forwarding plane utilization; and BWfpm is the measured forwarding plane bandwidth in Gbps.
  • BWi is fixed, Ufpt is manually configured, and BWcps varies over time as the control plane completes CAC functions. Accordingly, for any given BWcps, as BWfpm changes, O has to change to keep the equation valid. Therefore, the second oversubscription factor can be calculated using the following equation:
  • step 409 the calculated second oversubscription factor is stored for subsequent analysis to determine if such conditions are met.
  • the behavior of the oversubscription updates can be controlled, for example, by controlling the forwarding plane bandwidth sampling interval (Ifp), the measurement interval required to increase O (Ii), and the measurement interval required to decrease O (Id).
  • Ifp forwarding plane bandwidth sampling interval
  • Ii the measurement interval required to increase O
  • Id the measurement interval required to decrease O
  • BWcps would be recorded (as in step 403)
  • BWfpm would be measured (as in step 405)
  • Osecond would be calculated (as in step 407). If Osecond is greater then Of ⁇ rst during every sample during interval Ii (e.g., as discussed below with regard to FIG.
  • BWcps and BWfpm samples can be averaged together across the interval and the averages can be used to calculate the Osecond applied to the interface subject to certain restrictions (e.g., as discussed below with regard to FIG. 5B).
  • Osecond is less than Ofirst during every sample during interval Id (e.g., as discussed below with regard to FIG. 5A)
  • the same would occur (e.g., as discussed below with regard to FIG. 5B).
  • a new interval Id is started (e.g., as discussed below with regard to FIG. 5A).
  • any sample Osecond is greater than Ofirst, then a new interval is started (e.g., as discussed below with regard to FIG. 5B). Having different interval for Ii and Id allows the network to quickly reduce O in the event of congestion, while increasing the O only if BWfpm is low for extended periods of time.
  • FIG. 5A is a flowchart of a process 500 for determining whether a change in the oversubscription factor over an oversubscription decrease interval or over an oversubscription factor increase interval warrants consideration for an update in the oversubscription factor, according to an exemplary embodiment.
  • the steps provided in FIG. 5A are optional, but can be used to reduce the number of times the oversubscription factor is updated in order to avoid overburdening the routers with numerous updates.
  • the inclusion of both a decrease interval and an increase interval in the process in FIG. 5A allows for differentiation between the number of updates during periods of increase versus during periods of decrease, for example, to allow for relatively quick upward adjustments and slower downward adjustments, or vice versa.
  • step 501 an Osecond value is collected for analysis, for example, for each forwarding plane bandwidth sampling interval (Ifp).
  • step 503 it is determined whether Osecond is greater than Ofirst. If Osecond is not greater than Of ⁇ rst, then the process proceeds to step 504 where it is determined whether Osecond is less than Ofirst. If in step 504 it is determined that Osecond is not less than Of ⁇ rst (i.e., that Osecond equals Of ⁇ rst), then the process 500 simply restarts. If, however, Osecond is less than Of ⁇ rst, then an oversubscription decrease interval (Id) is started in step 505.
  • Id oversubscription decrease interval
  • step 509 one or more additional Osecond value(s) are collected, such as in step 507, and it is determined in step 509 whether the additional Osecond value is greater than the Of ⁇ rst value. If the additional Osecond value is greater than the Of ⁇ rst value, then the process proceeds to step 515 where an oversubscription factor increase interval (Ii) is started. However, if the additional Osecond value is not greater than the Of ⁇ rst value in step 509, then it is determined whether the decrease interval (Id) has expired in step 511. If the decrease interval (Id) has not yet expired, then the process loops back to step 507 and another additional Osecond value is collected and analyzed. If, however, the decrease interval (Id) has expired in step 511, then the oversubscription update information is stored in step 513 and the process then proceeds to the process in FIG. 5B.
  • step 503 Osecond is determined to be greater than Of ⁇ rst, then the process proceeds to step 515, where an oversubscription increase interval (Ii) is started. Then, during the increase interval (Ii), one or more additional Osecond value(s) are collected, such as in step 517, and it is determined in step 519 whether the additional Osecond value is less than the Of ⁇ rst value. If the additional Osecond value is less than the Of ⁇ rst value, then the process proceeds to step 505 where an oversubscription factor decrease interval (Id) is started. However, if the additional Osecond value is not less than the Ofirst value in step 519, then it is determined whether the increase interval (Ii) has expired in step 521.
  • step 521 If the increase interval (Ii) has not yet expired, then the process loops back to step 517 and another additional Osecond value is collected and analyzed. If, however, the increase interval (Ii) has expired in step 521, then the oversubscription update information is stored in step 513 and the process then proceeds to the process in FIG. 5B.
  • the oversubscription value can be controlled and managed by setting an initial value (Oi), a min value (Omin), a max value (Omax), and a minimum percentage change (Op).
  • O can be increased to compensate for the higher than expected BWfpm, regardless of whether the extra BWfpm came from higher than expected traffic from each CAC defined flow in one control plane, or additional CAC defined flows by another control plane signaling traffic across the same interface.
  • BWcps and BWfpm can be controlled to be greater than a predetermined threshold amount (BWth) to prevent skewing the results.
  • FIG. 5B is a flowchart of a process 522 for changing an advertised bandwidth of the control plane based upon updating of the oversubscription factor to the new oversubscription factor, according to an exemplary embodiment.
  • the oversubscription update information stored in step 513 at either the expiration of the decrease interval (Id) or the increase interval (Ii) would be collected, and an average value of the control plane bandwidth (BWcps) and an average value of the forwarding place bandwidth (BWfpm) are calculated.
  • a second oversubscription value for the interval (02) is calculated using the average value of the control plane bandwidth (BWcps), the average value of the forwarding place bandwidth (BWfpm), and the target forwarding plane utilization (Ufpt) in the above equation. With this information, numerous controls are evaluated in order to determine an updated oversubscription factor.
  • step 527 it is determined whether the average value of the control plane bandwidth (BWcps) is less than a predetermined threshold bandwidth (BWth). If the average value of the control plane bandwidth (BWcps) is less than the predetermined threshold bandwidth (BWth), then the new oversubscription value (O) is set to the initial oversubscription value (Oi) in step 529 and the process proceeds to step 553. If the average value of the control plane bandwidth (BWcps) is not less than the predetermined threshold bandwidth (BWth), then it is determined whether the average value of the forwarding plane bandwidth (BWfpm) is less than the predetermined threshold bandwidth (BWth) in step 531.
  • BWfpm forwarding plane bandwidth
  • the new oversubscription value (O) is set to the initial oversubscription value (Oi) in step 533 and the process proceeds to step 553. If the average value of the forwarding plane bandwidth (BWfpm) is not less than the predetermined threshold bandwidth (BWth), then the process proceeds to step 535.
  • step 535 it is determined whether absolute value of ((02 / Ofirst) - 1) is less than the minimum percentage change (Op), and, if so, then the new oversubscription value (O) is set to Of ⁇ rst in step 537 and the process proceeds to step 553. If, however, it is determined that the absolute value of ((02 / Ofirst) - 1) is not less than the minimum percentage change (Op), then the process proceeds to step 539. In step 539, it is determined whether 02 is less than Omin, and, if so, then the oversubscription value (O) is set to Omin in step 541 and the process proceeds to step 553. If, however, 02 is not less than Omin, then the process proceeds to step 543.
  • step 543 it is determined whether 02 is greater than Omax, and, if so, then the oversubscription value (O) is set to Omax in step 545 and the process proceeds to step 553. If, however, 02 is not greater than Omax then the process proceeds to step 547.
  • step 547 it is determined whether 02 is less than the average value of the control plane bandwidth (BWcps) divided by the interface bandwidth (BWi), and, if so, then the oversubscription value (O) is set to the average value of the control plane bandwidth (BWcps) divided by the interface bandwidth (BWi) in step 549 and the process proceeds to step 553. If, however, 02 is not less than the average value of the control plane bandwidth (BWcps) divided by the interface bandwidth (BWi), then the oversubscription value (O) is set to 02 in step 551, and the process proceeds to step 553.
  • step 553 the oversubscription value determined at one of steps 529, 533, 537, 541, 545, 549, or 551 is used to calculate the available control plane bandwidth (BW available), which is advertised if a change has occurred.
  • BW available available control plane bandwidth
  • the measurements taken of the forwarding plane utilization on an interface can be used to update the advertised control plane oversubscription bandwidths for that interface based on the differences between measured and expected behavior.
  • a first example of the above processes is set forth below.
  • twenty IG LSPs are signaled across a 1OG interface that is oversubscribed by a ratio of 2:1, and each LSP has 250M of traffic.
  • BWcps is equal to 2OG; Oi is set at 2; Omin is set at 0.5; Omax is set at 4; BWi is 1OG; Ufpt is set at 0.9; and BWfpm is equal to 5G.
  • the interface would be at 50% utilization (BWfpm / BWi), yet the control plane would believe that the interface is fully utilized and will not allow any more LSPs to be signaled.
  • BWi 1OG
  • BWfpm 2G.
  • Network 1 reduces available bandwidth for new LSPs from 45 G to 17.5 G, while Network 2 reduces available bandwidth from 270G to 105G.
  • Network 1 reduces available bandwidth for new LSPs from 17.5G to 6.125G, while Network 2 reduces available bandwidth from 105G to 37.5G.
  • the processes described herein may be implemented via software, hardware (e.g., general processor, Digital Signal Processing (DSP) chip, an Application Specific Integrated Circuit (ASIC), Field Programmable Gate Arrays (FPGAs), etc.), firmware or a combination thereof.
  • DSP Digital Signal Processing
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Arrays
  • FIG. 6 illustrates computing hardware (e.g., computer system) upon which an embodiment according to the invention can be implemented.
  • the computer system 600 includes a bus 601 or other communication mechanism for communicating information and a processor 603 coupled to the bus 601 for processing information.
  • the computer system 600 also includes main memory 605, such as random access memory (RAM) or other dynamic storage device, coupled to the bus 601 for storing information and instructions to be executed by the processor 603.
  • Main memory 605 also can be used for storing temporary variables or other intermediate information during execution of instructions by the processor 603.
  • the computer system 600 may further include a read only memory (ROM) 607 or other static storage device coupled to the bus 601 for storing static information and instructions for the processor 603.
  • ROM read only memory
  • a storage device 609 such as a magnetic disk or optical disk, is coupled to the bus 601 for persistently storing information and instructions.
  • the computer system 600 may be coupled via the bus 601 to a display 611, such as a cathode ray tube (CRT), liquid crystal display, active matrix display, or plasma display, for displaying information to a computer user.
  • a display 611 such as a cathode ray tube (CRT), liquid crystal display, active matrix display, or plasma display
  • An input device 613 such as a keyboard including alphanumeric and other keys, is coupled to the bus 601 for communicating information and command selections to the processor 603.
  • a cursor control 615 such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor 603 and for controlling cursor movement on the display 611.
  • the processes described herein are performed by the computer system 600, in response to the processor 603 executing an arrangement of instructions contained in main memory 605.
  • Such instructions can be read into main memory 605 from another computer-readable medium, such as the storage device 609.
  • Execution of the arrangement of instructions contained in main memory 605 causes the processor 603 to perform the process steps described herein.
  • processors in a multi-processing arrangement may also be employed to execute the instructions contained in main memory 605.
  • hard- wired circuitry may be used in place of or in combination with software instructions to implement the embodiment of the invention.
  • embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
  • the computer system 600 also includes a communication interface 617 coupled to bus 601.
  • the communication interface 617 provides a two-way data communication coupling to a network link 619 connected to a local network 621.
  • the communication interface 617 may be a digital subscriber line (DSL) card or modem, an integrated services digital network (ISDN) card, a cable modem, a telephone modem, or any other communication interface to provide a data communication connection to a corresponding type of communication line.
  • communication interface 617 may be a local area network (LAN) card (e.g. for EthernetTM or an Asynchronous Transfer Model (ATM) network) to provide a data communication connection to a compatible LAN.
  • LAN local area network
  • Wireless links can also be implemented.
  • communication interface 617 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.
  • the communication interface 617 can include peripheral interface devices, such as a Universal Serial Bus (USB) interface, a PCMCIA (Personal Computer Memory Card International Association) interface, etc.
  • USB Universal Serial Bus
  • PCMCIA Personal Computer Memory Card International Association
  • the network link 619 typically provides data communication through one or more networks to other data devices.
  • the network link 619 may provide a connection through local network 621 to a host computer 623, which has connectivity to a network 625 (e.g. a wide area network (WAN) or the global packet data communication network now commonly referred to as the "Internet") or to data equipment operated by a service provider.
  • the local network 621 and the network 625 both use electrical, electromagnetic, or optical signals to convey information and instructions.
  • the signals through the various networks and the signals on the network link 619 and through the communication interface 617, which communicate digital data with the computer system 600, are exemplary forms of carrier waves bearing the information and instructions.
  • the computer system 600 can send messages and receive data, including program code, through the network(s), the network link 619, and the communication interface 617.
  • a server (not shown) might transmit requested code belonging to an application program for implementing an embodiment of the invention through the network 625, the local network 621 and the communication interface 617.
  • the processor 603 may execute the transmitted code while being received and/or store the code in the storage device 609, or other non-volatile storage for later execution. In this manner, the computer system 600 may obtain application code in the form of a carrier wave.
  • Non-volatile media include, for example, optical or magnetic disks, such as the storage device 609.
  • Volatile media include dynamic memory, such as main memory 605.
  • Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise the bus 601. Transmission media can also take the form of acoustic, optical, or electromagnetic waves, such as those generated during radio frequency (RF) and infrared (IR) data communications.
  • RF radio frequency
  • IR infrared
  • Computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, CDRW, DVD, any other optical medium, punch cards, paper tape, optical mark sheets, any other physical medium with patterns of holes or other optically recognizable indicia, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
  • a floppy disk a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, CDRW, DVD, any other optical medium, punch cards, paper tape, optical mark sheets, any other physical medium with patterns of holes or other optically recognizable indicia, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
  • Various forms of computer-readable media may be involved in providing instructions to a processor for execution.
  • the instructions for carrying out at least part of the embodiments of the invention may initially be borne on a magnetic disk of a remote computer.
  • the remote computer loads the instructions into main memory and sends the instructions over a telephone line using a modem.
  • a modem of a local computer system receives the data on the telephone line and uses an infrared transmitter to convert the data to an infrared signal and transmit the infrared signal to a portable computing device, such as a personal digital assistant (PDA) or a laptop.
  • PDA personal digital assistant
  • An infrared detector on the portable computing device receives the information and instructions borne by the infrared signal and places the data on a bus.
  • the bus conveys the data to main memory, from which a processor retrieves and executes the instructions.
  • the instructions received by main memory can optionally be stored on storage device either before or after execution by processor.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A method is provided that includes setting a first oversubscription factor of a control plane for an interface, measuring forwarding plane utilization on the interface, and calculating a second oversubscription factor of the control plane for the interface using the measured forwarding plane utilization as compared with a target forwarding plane utilization on the interface. The method also includes determining whether to update the first oversubscription factor based upon the calculated second oversubscription factor.

Description

METHOD AND APPARATUS FOR REFLECTING FORWARDING PLANE UTILIZATION IN A CONTROL PLANE
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims benefit of Non-provisional Application Serial No. 12/260,116, filed October 29, 2008, the entire contents of which are hereby incorporated by reference as if fully set forth herein, under 35 U.S. C. §119(e).
BACKGROUND INFORMATION
[0002] Modern communication networks are growing in size and complexity. As the number of consumers increases and services evolve in sophistication, the performance of these networks can degrade, in part, from link and pathway congestion. During information transport, link and pathway congestion customarily results in transmitted units of data (e.g., blocks, cells, frames, packets, etc.) becoming unevenly distributed over time, excessively queued, and discarded, thereby degrading the quality of network communications. Network devices, such as routers, play a key role in the rapid and successful transport of such information. One approach to ensuring quality is to deploy routers with more processing power and capacity; unfortunately, this approach can be cost prohibitive. Therefore, the concept of logical routers has been developed to permit the sharing of expensive hardware components. However, these logical routers, which behave independently, lack coordination with respect to the allocation of resources. Another factor contributing to cost is the development of new protocols and standards to accommodate new functionalities.
[0003] Therefore, there is a need for an approach that provides for efficient link sharing among logical routers, while attempting to preserve compatibility with current protocols and standards. BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Various exemplary embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like reference numerals refer to similar elements and in which:
[0005] FIG. 1 is a diagram of a system capable of providing link sharing among logical routers;
[0006] FIG. 2 is a diagram of a physical router implementing multiple logical routers, according to various exemplary embodiments;
[0007] FIG. 3 is a diagram of a router including multiple control planes utilizing a common forwarding plane, according to an exemplary embodiment;
[0008] FIG. 4 is a flowchart of a process for sampling forwarding plane utilization and calculating an oversubscription factor of a control plane based on the sampled forwarding plane utilization and a target forwarding plane utilization, according to an exemplary embodiment;
[0009] FIG. 5A is a flowchart of a process for determining whether a change in the oversubscription factor over an oversubscription decrease interval or over an oversubscription factor increase interval warrants consideration for an update in the oversubscription factor, according to an exemplary embodiment;
[0010] FIG. 5B is a flowchart of a process for changing an advertised bandwidth of the control plane based upon updating of the oversubscription factor to the new oversubscription factor, according to an exemplary embodiment; and
[0011] FIG. 6 is a diagram of a computer system that can be used to implement various exemplary embodiments. DESCRIPTION OF THE PREFERRED EMBODIMENT
[0012] A preferred apparatus, method, and system for reflecting forwarding plane utilization in control plane are described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the preferred embodiments of the invention. It is apparent, however, that the preferred embodiments may be practiced without these specific details or with an equivalent arrangement. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the preferred embodiments of the invention.
[0013] An approach is provided of reflecting forwarding plane utilization in a dynamic control plane with bandwidth reservation by sampling forwarding plane utilization and changing advertised control plane bandwidths by changing the oversubscription factor on an interface used for Call Admission Control (CAC) in real time to compensate for differences in expected and measured forwarding plane utilization, which can also be applied to solving bandwidth reservation problems with ships-in-the-night routing.
[0014] Although various exemplary embodiments are described with respect to a Multiprotocol Label Switching (MPLS) network, it is contemplated that these embodiments have applicability to any communication system capable of supporting bandwidth reservation.
[0015] FIGs. 1 and 2 are, respectively, a diagram of a system capable of providing link sharing among logical routers, and a diagram of a physical router implementing multiple logical routers, according to various exemplary embodiments. A communication system 100 includes a networking device 101, such as a router (or routing platform) that provides connectivity between the one or more networks 103a-103n. The router 101 comprises one or more physical and/or logical routers 105a-105n with corresponding traffic engineering databases 107a-107n. Assuming routers 105a-105n encompass logical routers, such logical routers may be Software Logical Routers (SLRs) or Hardware Logical Routers (HLRs). The logical routers (e.g., router 105n) in a sense are similar to physical routers in that they possess their own set of hardware and software resources (e.g., processors, line cards, configuration, interfaces, and protocols). By way of example, the networks 103a-103n can be Multi Protocol Label Switching (MPLS) networks. MPLS provides for efficient transport of traffic flows between different hardware platforms as well as different applications. Traffic engineering, within an MPLS network, is provided through the use of label switched paths (LSPs), which are created independently based on user-defined policies.
[0016] Data transmission over an MPLS system involves the establishment of label-switched paths (LSPs), which are a sequence of labels stemming from every node within the communication path from a source node to a destination node. Resource Reservation Protocol (RSVP) or label distribution protocol (LDP) can be used to distribute the labels. With respect to an Internet Protocol (IP)-based network MPLS can map IP addresses to fixed-length labels for processing by packet-forwarding or packet-switching platforms. MPLS, which is independent of Layer 2 and Layer 3 protocols, can support a variety of protocols. Accordingly, these networks 103a-103n may further utilize network elements employing a host of technologies, including Gigabit Ethernet, frame relay, Asynchronous Transfer Mode (ATM), Fiber Distributed Data Interface (FDDI), synchronous optical network (SONET), etc.
[0017] The router 101 operates at the physical layer, link layer and network layer of the Open Systems Interconnection (OSI) model to transport data across the network 100. In general, the router 101 can determine the "best" paths or routes by utilizing various routing protocols. Routing tables are maintained by each router for mapping input ports to output ports using information from routing protocols. Exemplary routing protocols include Border Gateway Protocol (BGP), Interior Gateway Routing Protocol (IGRP), Routing Information Protocol (RIP), Open Shortest Path First (OSPF), and Intermediate System to Intermediate System (IS-IS). In addition to intelligently forwarding data, the router 101 can provide various other functions, such as firewalling, encryption, etc. It is noted that the label distribution can also involve piggybacking on the BGP or OSPF routing protocols. The router functions can be performed using a general purpose computer (e.g., as shown in FIG. 6), or be highly specialized hardware platform with greater processing capability to process high volumes of data and hardware redundancies to ensure high reliability. The logical routers 105a-105n can work independently with any of the above internetworking protocols. [0018] As seen in FIG. 2, the router 101 includes a messaging bus 201 for permitting the exchange of messages between the logical routers 105a-105n and a shared forwarding plane 203. A forwarding plane 203 couples to one or more ports 205a-205n to process packets received over these ports 205a-205n by determining addressing information for destination nodes or devices. Additionally, these ports 205a-205n can provide multiple logical ports (LPs). The forwarding plane 203 uses a forwarding table to determine a communication path to the destination node. The forwarding table entries are populated by the forwarding information base entries received from the plurality of logical routers based on the routing tables contained therein. In typical hardware logical router implementations, hardware resources are dedicated to each logical router. Hardware separated logical routers could also share logical interfaces as well. However, in some software logical router implementations, no such dedication of physical resources to each logical router is required. As such, separate logical routers can share the same physical network port, with separation occurring at Layer 2 via Ethernet VLANs (virtual local area networks), ATM VCCs (Asynchronous Transfer Mode Virtual Channel Connections), Frame Relay DLCIs (data link connections), etc. However, since the separation is at Layer 2, traffic engineering becomes more complicated since each Layer 2 logical channel could utilize the entire capacity of the port (e.g., port 205a). In situations where each logical router is forwarding large volumes of traffic across their individual logical port, congestion and packet loss can occur. As MPLS traffic engineering has no mechanism for representing congestion and packet loss in the traffic engineering information distributed to the network, traditionally each logical router would have no knowledge regarding whether the sum of all of the logical routers' bandwidth reservations could exceed the port capacity.
[0019] To address this issue, the router 101, according to one embodiment, provides a mechanism for reflecting forwarding plane utilization in a dynamic control plane with bandwidth reservation by sampling forwarding plane utilization and changing advertised control plane bandwidths by changing the oversubscription factor on an interface used for CAC in real time to compensate for differences in expected and measured forwarding plane utilization. [0020] FIG. 3 is a diagram of a router 101 including multiple control planes 301a, 301b, ... 30 In, utilizing a common forwarding plane 203, according to an exemplary embodiment. For the purposes of illustration, the logical routers 105a-105n are described in a Traffic-Engineered (TE) Multiprotocol Label Switching (MPLS) environment. As described, the router 101 includes forwarding plane hardware 203 that is shared by two or more logical routing entities, i.e., logical routers 105a-105n. Traditionally, routers utilize a single control-plane entity and a single forwarding plane entity. In order to avoid the use of multiple, often under-utilized physical routers to perform differing routing functions or services, a N:l relationship is established among control plane entities 301a-301n and the forwarding plane 203. This arrangement allows a single routing platform to appear as multiple logical routing platforms to the network 100. Consequently, the sharing of a single hardware platform among several routing functions or services can be achieved. The approach of router 101 involves an advertised bandwidth update message exchange between the forwarding plane 203 and the control planes 301a-301n. In one embodiment, the mechanism for exchanging such capacity information is locally implemented, thereby requiring no protocol exchange between the logical routers 105a-105n.
[0021] It is recognized that interior gateway protocols, such as Open Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS), have been extended to support the distribution of Traffic Engineering information so that appropriate Traffic-Engineered Label Switched Paths (LSPs) can be calculated and signaled across an MPLS network. These extensions are specified in Internet Engineering Task Force (IETF) Request for Comment (RFC) 3630 and RFC 3784, for OSPF and IS-IS, respectively, which are incorporated herein by reference in their entireties. In these RFCs, Sub-TLVs (Type-Length-Values) have been defined to identify the link in question, color or administrative group of the link, the link's Maximum Bandwidth, the link's (Maximum) Reservable Bandwidth, the link's Unreserved Bandwidth and the link's TE -metric or cost.
[0022] This information can be distributed throughout the network for all links so that each router in the network is aware of the entire topology of the network. As LSPs are signaled using this information and bandwidth is reserved, the routers in the LSP path update the Unreserved Bandwidth (UnRsvBW) value and send this updated information out to the other routers in the network. Accordingly, any ingress label switch router can determine where to place future LSPs based on lowest metric cost and bandwidth availability.
[0023] Conventional implementations of traffic engineering in a multiple logical router environment operate in a "ships-in-the -night" mode. As such, the above process occurs without regard to any other logical routers using the same port. Assuming router 101 is configured to operate in this conventional mode of operation, Logical Router 1 would reserve a certain amount of bandwidth, "X", on a logical or physical port. In this scenario, the rest of the LRl network would be aware of the bandwidth change because of the UnRsvBW Sub-TLV field, but no other LRs (e.g., LR2 ... LRN) on the same physical platform would be notified of the bandwidth reservation (much less the other routers in the non-LRl network). As a result, the other networks may consider this link as a viable candidate for LSP placement even though it now has an available bandwidth that is less (i.e., MaxBW - X). Hence, a mechanism is needed to alert all the local LRs that are sharing a port that the advertised capacity has now changed, so that these LRs can update their Traffic Engineering Databases (TED) and router neighbors.
[0024] The system 100, according to certain embodiments, provides real-time modification of oversubscription factors to achieve network goals of high utilization with low loss. It is noted that oversubscription and CAC can happen at multiple different layers; and these processes described herein can apply to any of those layers. For example, in an MPLS network, LSPs are assigned to physical interfaces and pseudowires (PWs) are assigned to LSPs. In an exemplary embodiment, oversubscription of physical interfaces means that the aggregate of LSP bandwidths across an interface exceeds the physical bandwidth of the interfaces. Also, oversubscription of LSPs provides that the aggregate of the PW bandwidths across an LSP exceeds the bandwidth signaled by the LSP. Using the case of interface oversubscription of LSP bandwidths as a baseline, there are two network problems addressed by the processes described herein.
[0025] The first major issue addressed is that of forwarding plane utilization not equaling control plane bandwidth defined by CAC. For example, in the case of a 1OG interface oversubscribed by a ratio of 2:1, the control plane will allow twenty IG LSPs to be signaled across the interface. The network operator may expect that, on average, the utilization of each IG LSP will be about 500M (i.e., IG / oversubscription factor). However, the actual utilization of the LSP could be in a first case 250M or it could be in a second case IG. In the first case, if all LSPs behave in a similar fashion, then after twenty LSPs are signaled, then the interface will only be 50% full, but no more LSPs will be allowed until the oversubscription factor is manually changed on the interface because the control plane traditionally has no knowledge of forwarding plane utilization. In the second case, if all LSPs consume IG, then after ten LSPs, all LSPs will start experiencing packet loss and latency until the oversubscription factor is manually changed on the interface. On a large network, monitoring interface utilization and making such changes is likely to require an extensive period of time (e.g., days), if it is ever even performed.
[0026] The second major issue addressed is that of multiple control planes reserving bandwidth on a single physical interface independently without knowledge of the other control planes in a ships-in-the -night routing architecture. In this case, even if the forwarding plane utilization of flows signaled by one control plane are consistent with the signaled bandwidth, the total forwarding plane utilization of flows signaled by all control planes cannot be controlled well. In the example above, if two control planes each signal ten IG LSPs across an interface, each control plane would see the interface as being only 50% full, even though there is no bandwidth remaining on the interface. If the oversubscription of both networks is reduced to accommodate for this issue, then bandwidth will be wasted if the networks do not consume the same proportions of bandwidth across all network interfaces. For example, if each network is set to only signal 1OG of LSPs across the interface, and one network has no LSPs traversing the interface, then the other network will think the interface is full even though half of the interface bandwidth is still available. As before, traditionally such a problem can only be corrected by manually making changes to each interface in the network, which is not operationally efficient.
[0027] Both of the above problems result from the same basic problem, namely, that the forwarding plane utilization and the control plane bandwidth defined by CAC are not consistent. The system 100, according to certain embodiments, solves these problems by taking measurements of forwarding plane utilization on an interface, and updating the control plane oversubscription bandwidths for that interface based on the differences between measured and expected behavior.
[0028] FIG. 4 is a flowchart of a process 400 for sampling forwarding plane utilization and calculating an oversubscription factor of a control plane based on the sampled forwarding plane utilization and a target forwarding plane utilization, according to an exemplary embodiment. The process 400 generally occurs during a predetermined sampling interval, which can be set to any desired frequency, and can be repeated for as long as desired.
[0029] In step 401, a first oversubscription factor (Ofϊrst) of the control plane is set for the interface. At the initiation of the process 400, the first over subscription value (which can be considered an initial oversubscription value (Oi) at the initiation of the first iteration of the processes described herein) can be set based on an estimation of the utilization, or can be set based on a baseline of historical data regarding previous utilization. In step 403, a forwarding plane sampling interval (Ifp) is started, and a control plane bandwidth (BWcps) is recorded or sampled at the start of the forwarding plane sampling interval. This process can use any methods of measuring forwarding plane utilization, for example, using existing network hardware to varying degrees of accuracy and measurement duration, or using other methods. In step 405, the forwarding plane sampling interval is ended, and a forwarding plane bandwidth (BWfpm) is measured.
[0030] In step 407, a second oversubscription factor (Osecond) for the sampling interval is calculated. The control plane oversubscription bandwidths for the interface can be determined based on the differences between measured and expected behavior using the following relationship:
[0031] [BWcps / (O x BWi)] x Ufpt = BWfpm / BWi,
[0032] where BWcps is the control plane bandwidth signaled in Gbps; O is the oversubscription factor; BWi is the interface bandwidth in Gbps; Ufpt is the target forwarding plane utilization; and BWfpm is the measured forwarding plane bandwidth in Gbps. [0033] In the above relationship, BWi is fixed, Ufpt is manually configured, and BWcps varies over time as the control plane completes CAC functions. Accordingly, for any given BWcps, as BWfpm changes, O has to change to keep the equation valid. Therefore, the second oversubscription factor can be calculated using the following equation:
[0034] Onew = BWcps x Ufpt / BWfpm,
[0035] as long as certain conditions are met, which can be used to control the behavior of the oversubscription updates. Such conditions will be discussed below with respect to FIGs. 5A and 5B. Thus, in step 409, the calculated second oversubscription factor is stored for subsequent analysis to determine if such conditions are met.
[0036] The behavior of the oversubscription updates can be controlled, for example, by controlling the forwarding plane bandwidth sampling interval (Ifp), the measurement interval required to increase O (Ii), and the measurement interval required to decrease O (Id). At the beginning of each Ifp, BWcps would be recorded (as in step 403), and at the end of each Ifp, BWfpm would be measured (as in step 405), and Osecond would be calculated (as in step 407). If Osecond is greater then Ofϊrst during every sample during interval Ii (e.g., as discussed below with regard to FIG. 5A), then BWcps and BWfpm samples can be averaged together across the interval and the averages can be used to calculate the Osecond applied to the interface subject to certain restrictions (e.g., as discussed below with regard to FIG. 5B). Likewise, if Osecond is less than Ofirst during every sample during interval Id (e.g., as discussed below with regard to FIG. 5A), then the same would occur (e.g., as discussed below with regard to FIG. 5B). If during interval Ii any sample Osecond is less than Ofirst, then a new interval Id is started (e.g., as discussed below with regard to FIG. 5A). Likewise, if during interval Id, any sample Osecond is greater than Ofirst, then a new interval is started (e.g., as discussed below with regard to FIG. 5B). Having different interval for Ii and Id allows the network to quickly reduce O in the event of congestion, while increasing the O only if BWfpm is low for extended periods of time.
[0037] FIG. 5A is a flowchart of a process 500 for determining whether a change in the oversubscription factor over an oversubscription decrease interval or over an oversubscription factor increase interval warrants consideration for an update in the oversubscription factor, according to an exemplary embodiment. The steps provided in FIG. 5A are optional, but can be used to reduce the number of times the oversubscription factor is updated in order to avoid overburdening the routers with numerous updates. Also, the inclusion of both a decrease interval and an increase interval in the process in FIG. 5A allows for differentiation between the number of updates during periods of increase versus during periods of decrease, for example, to allow for relatively quick upward adjustments and slower downward adjustments, or vice versa.
[0038] In step 501, an Osecond value is collected for analysis, for example, for each forwarding plane bandwidth sampling interval (Ifp). In step 503, it is determined whether Osecond is greater than Ofirst. If Osecond is not greater than Ofϊrst, then the process proceeds to step 504 where it is determined whether Osecond is less than Ofirst. If in step 504 it is determined that Osecond is not less than Ofϊrst (i.e., that Osecond equals Ofϊrst), then the process 500 simply restarts. If, however, Osecond is less than Ofϊrst, then an oversubscription decrease interval (Id) is started in step 505. Then, during the decrease interval (Id), one or more additional Osecond value(s) are collected, such as in step 507, and it is determined in step 509 whether the additional Osecond value is greater than the Ofϊrst value. If the additional Osecond value is greater than the Ofϊrst value, then the process proceeds to step 515 where an oversubscription factor increase interval (Ii) is started. However, if the additional Osecond value is not greater than the Ofϊrst value in step 509, then it is determined whether the decrease interval (Id) has expired in step 511. If the decrease interval (Id) has not yet expired, then the process loops back to step 507 and another additional Osecond value is collected and analyzed. If, however, the decrease interval (Id) has expired in step 511, then the oversubscription update information is stored in step 513 and the process then proceeds to the process in FIG. 5B.
[0039] If, in step 503, Osecond is determined to be greater than Ofϊrst, then the process proceeds to step 515, where an oversubscription increase interval (Ii) is started. Then, during the increase interval (Ii), one or more additional Osecond value(s) are collected, such as in step 517, and it is determined in step 519 whether the additional Osecond value is less than the Ofϊrst value. If the additional Osecond value is less than the Ofϊrst value, then the process proceeds to step 505 where an oversubscription factor decrease interval (Id) is started. However, if the additional Osecond value is not less than the Ofirst value in step 519, then it is determined whether the increase interval (Ii) has expired in step 521. If the increase interval (Ii) has not yet expired, then the process loops back to step 517 and another additional Osecond value is collected and analyzed. If, however, the increase interval (Ii) has expired in step 521, then the oversubscription update information is stored in step 513 and the process then proceeds to the process in FIG. 5B.
[0040] In addition to the controls on the behavior of the oversubscription updates discussed, above, the oversubscription value can be controlled and managed by setting an initial value (Oi), a min value (Omin), a max value (Omax), and a minimum percentage change (Op). For a given BWcps, as BWfpm increases, O can be increased to compensate for the higher than expected BWfpm, regardless of whether the extra BWfpm came from higher than expected traffic from each CAC defined flow in one control plane, or additional CAC defined flows by another control plane signaling traffic across the same interface. BWcps and BWfpm can be controlled to be greater than a predetermined threshold amount (BWth) to prevent skewing the results. If the new calculated value of O is within +/- Op percent of the current O, then no change would occur. If the new calculated O was greater than Omax, then O can be set to Omax. If the new calculated value of O was less then Omin, then O can be set to Omin. In addition, O can be bound by the current BWcps, such that BWcps does not exceed total bandwidth available. In other words, this algorithm would preferably not be used to force existing CAC defined flows to move away from the interface because this would result in too much network churn, but rather it would only be used to affect the placement of new flows. FIG. 5B sets forth an embodiment of such controls.
[0041] FIG. 5B is a flowchart of a process 522 for changing an advertised bandwidth of the control plane based upon updating of the oversubscription factor to the new oversubscription factor, according to an exemplary embodiment. In step 523, the oversubscription update information stored in step 513 at either the expiration of the decrease interval (Id) or the increase interval (Ii) would be collected, and an average value of the control plane bandwidth (BWcps) and an average value of the forwarding place bandwidth (BWfpm) are calculated. In step 525, a second oversubscription value for the interval (02) is calculated using the average value of the control plane bandwidth (BWcps), the average value of the forwarding place bandwidth (BWfpm), and the target forwarding plane utilization (Ufpt) in the above equation. With this information, numerous controls are evaluated in order to determine an updated oversubscription factor.
[0042] In step 527, it is determined whether the average value of the control plane bandwidth (BWcps) is less than a predetermined threshold bandwidth (BWth). If the average value of the control plane bandwidth (BWcps) is less than the predetermined threshold bandwidth (BWth), then the new oversubscription value (O) is set to the initial oversubscription value (Oi) in step 529 and the process proceeds to step 553. If the average value of the control plane bandwidth (BWcps) is not less than the predetermined threshold bandwidth (BWth), then it is determined whether the average value of the forwarding plane bandwidth (BWfpm) is less than the predetermined threshold bandwidth (BWth) in step 531. If the average value of the forwarding plane bandwidth (BWfpm) is less than the predetermined threshold bandwidth (BWth), then the new oversubscription value (O) is set to the initial oversubscription value (Oi) in step 533 and the process proceeds to step 553. If the average value of the forwarding plane bandwidth (BWfpm) is not less than the predetermined threshold bandwidth (BWth), then the process proceeds to step 535.
[0043] In step 535, it is determined whether absolute value of ((02 / Ofirst) - 1) is less than the minimum percentage change (Op), and, if so, then the new oversubscription value (O) is set to Ofϊrst in step 537 and the process proceeds to step 553. If, however, it is determined that the absolute value of ((02 / Ofirst) - 1) is not less than the minimum percentage change (Op), then the process proceeds to step 539. In step 539, it is determined whether 02 is less than Omin, and, if so, then the oversubscription value (O) is set to Omin in step 541 and the process proceeds to step 553. If, however, 02 is not less than Omin, then the process proceeds to step 543. In step 543, it is determined whether 02 is greater than Omax, and, if so, then the oversubscription value (O) is set to Omax in step 545 and the process proceeds to step 553. If, however, 02 is not greater than Omax then the process proceeds to step 547. In step 547, it is determined whether 02 is less than the average value of the control plane bandwidth (BWcps) divided by the interface bandwidth (BWi), and, if so, then the oversubscription value (O) is set to the average value of the control plane bandwidth (BWcps) divided by the interface bandwidth (BWi) in step 549 and the process proceeds to step 553. If, however, 02 is not less than the average value of the control plane bandwidth (BWcps) divided by the interface bandwidth (BWi), then the oversubscription value (O) is set to 02 in step 551, and the process proceeds to step 553.
[0044] In step 553, the oversubscription value determined at one of steps 529, 533, 537, 541, 545, 549, or 551 is used to calculate the available control plane bandwidth (BW available), which is advertised if a change has occurred. Thus, the measurements taken of the forwarding plane utilization on an interface can be used to update the advertised control plane oversubscription bandwidths for that interface based on the differences between measured and expected behavior.
[0045] A first example of the above processes is set forth below. In this example, twenty IG LSPs are signaled across a 1OG interface that is oversubscribed by a ratio of 2:1, and each LSP has 250M of traffic. In this example, BWcps is equal to 2OG; Oi is set at 2; Omin is set at 0.5; Omax is set at 4; BWi is 1OG; Ufpt is set at 0.9; and BWfpm is equal to 5G. Using traditional methods, the interface would be at 50% utilization (BWfpm / BWi), yet the control plane would believe that the interface is fully utilized and will not allow any more LSPs to be signaled. However, applying the formula set forth above and the processes described herein, 02 = 2OG x 0.9 / 5G = 3.6, which is less than Omax. This would increase available control plane bandwidth for new LSPs to 16G (i.e., (BWi x O - BWcps) = (10 x 3.6 - 20) = 16G). If five more IG LSPs were signaled, and all twenty-five LSPs had 500Mbps of traffic, then 02 would be reduced as follows: 02 = 25G x 0.9 / 12.5G = 1.8, but since this is less than 2.5 (i.e., BWcps / BWi = 25 / 10 = 2.5), then O is set to 2.5 (see, steps 547 and 549). If BWcps decreased any or BWfpm decreased significantly, then O would change again to compensate.
[0046] In a second example, the following two ships-in-the-night networks are running across the same physical interface. In Network 1, BWcps = 5G (carrying target amount of traffic BWcps/Oi = IG); Oi = 5; Omin = 0.5; Omax = 10; and Ufpt = 0.9. In Network 2, BWcps = 3OG (carrying target amount of traffic BWcps/Oi = IG); Oi = 30; Omin = 0.5; Omax = 60; and Ufpt = 0.9. The two networks are riding across the same interface, so they will have the same forwarding plane measurements: BWi = 1OG; and BWfpm = 2G. In this scenario, O2(Network 1) = 5G x 0.9 / 2G = 2.25; and O2(Network2) = 3OG x 0.9 / 2G = 13.5. The result is that Network 1 reduces available bandwidth for new LSPs from 45 G to 17.5 G, while Network 2 reduces available bandwidth from 270G to 105G. If Network 2 sees LSP utilization triple, then both networks will compensate for it: BWi = 1OG; and BWfpm = 4G. Thus, O2(Network 1) = 5G x 0.9 / 4G = 1.125; and O2(Network 2) = 30G x 0.9 / 4G = 6.75. The result is that Network 1 reduces available bandwidth for new LSPs from 17.5G to 6.125G, while Network 2 reduces available bandwidth from 105G to 37.5G.
[0047] The processes described herein may be implemented via software, hardware (e.g., general processor, Digital Signal Processing (DSP) chip, an Application Specific Integrated Circuit (ASIC), Field Programmable Gate Arrays (FPGAs), etc.), firmware or a combination thereof. Such exemplary hardware for performing the described functions is detailed below.
[0048] FIG. 6 illustrates computing hardware (e.g., computer system) upon which an embodiment according to the invention can be implemented. The computer system 600 includes a bus 601 or other communication mechanism for communicating information and a processor 603 coupled to the bus 601 for processing information. The computer system 600 also includes main memory 605, such as random access memory (RAM) or other dynamic storage device, coupled to the bus 601 for storing information and instructions to be executed by the processor 603. Main memory 605 also can be used for storing temporary variables or other intermediate information during execution of instructions by the processor 603. The computer system 600 may further include a read only memory (ROM) 607 or other static storage device coupled to the bus 601 for storing static information and instructions for the processor 603. A storage device 609, such as a magnetic disk or optical disk, is coupled to the bus 601 for persistently storing information and instructions.
[0049] The computer system 600 may be coupled via the bus 601 to a display 611, such as a cathode ray tube (CRT), liquid crystal display, active matrix display, or plasma display, for displaying information to a computer user. An input device 613, such as a keyboard including alphanumeric and other keys, is coupled to the bus 601 for communicating information and command selections to the processor 603. Another type of user input device is a cursor control 615, such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor 603 and for controlling cursor movement on the display 611.
[0050] According to an embodiment of the invention, the processes described herein are performed by the computer system 600, in response to the processor 603 executing an arrangement of instructions contained in main memory 605. Such instructions can be read into main memory 605 from another computer-readable medium, such as the storage device 609. Execution of the arrangement of instructions contained in main memory 605 causes the processor 603 to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the instructions contained in main memory 605. In alternative embodiments, hard- wired circuitry may be used in place of or in combination with software instructions to implement the embodiment of the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
[0051] The computer system 600 also includes a communication interface 617 coupled to bus 601. The communication interface 617 provides a two-way data communication coupling to a network link 619 connected to a local network 621. For example, the communication interface 617 may be a digital subscriber line (DSL) card or modem, an integrated services digital network (ISDN) card, a cable modem, a telephone modem, or any other communication interface to provide a data communication connection to a corresponding type of communication line. As another example, communication interface 617 may be a local area network (LAN) card (e.g. for Ethernet™ or an Asynchronous Transfer Model (ATM) network) to provide a data communication connection to a compatible LAN. Wireless links can also be implemented. In any such implementation, communication interface 617 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information. Further, the communication interface 617 can include peripheral interface devices, such as a Universal Serial Bus (USB) interface, a PCMCIA (Personal Computer Memory Card International Association) interface, etc. Although a single communication interface 617 is depicted in FIG. 6, multiple communication interfaces can also be employed.
[0052] The network link 619 typically provides data communication through one or more networks to other data devices. For example, the network link 619 may provide a connection through local network 621 to a host computer 623, which has connectivity to a network 625 (e.g. a wide area network (WAN) or the global packet data communication network now commonly referred to as the "Internet") or to data equipment operated by a service provider. The local network 621 and the network 625 both use electrical, electromagnetic, or optical signals to convey information and instructions. The signals through the various networks and the signals on the network link 619 and through the communication interface 617, which communicate digital data with the computer system 600, are exemplary forms of carrier waves bearing the information and instructions.
[0053] The computer system 600 can send messages and receive data, including program code, through the network(s), the network link 619, and the communication interface 617. In the Internet example, a server (not shown) might transmit requested code belonging to an application program for implementing an embodiment of the invention through the network 625, the local network 621 and the communication interface 617. The processor 603 may execute the transmitted code while being received and/or store the code in the storage device 609, or other non-volatile storage for later execution. In this manner, the computer system 600 may obtain application code in the form of a carrier wave.
[0054] The term "computer-readable medium" as used herein refers to any medium that participates in providing instructions to the processor 603 for execution. Such a medium may take many forms, including but not limited to non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as the storage device 609. Volatile media include dynamic memory, such as main memory 605. Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise the bus 601. Transmission media can also take the form of acoustic, optical, or electromagnetic waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, CDRW, DVD, any other optical medium, punch cards, paper tape, optical mark sheets, any other physical medium with patterns of holes or other optically recognizable indicia, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
[0055] Various forms of computer-readable media may be involved in providing instructions to a processor for execution. For example, the instructions for carrying out at least part of the embodiments of the invention may initially be borne on a magnetic disk of a remote computer. In such a scenario, the remote computer loads the instructions into main memory and sends the instructions over a telephone line using a modem. A modem of a local computer system receives the data on the telephone line and uses an infrared transmitter to convert the data to an infrared signal and transmit the infrared signal to a portable computing device, such as a personal digital assistant (PDA) or a laptop. An infrared detector on the portable computing device receives the information and instructions borne by the infrared signal and places the data on a bus. The bus conveys the data to main memory, from which a processor retrieves and executes the instructions. The instructions received by main memory can optionally be stored on storage device either before or after execution by processor.
[0056] While certain exemplary embodiments and implementations have been described herein, other embodiments and modifications will be apparent from this description. Accordingly, the invention is not limited to such embodiments, but rather to the broader scope of the presented claims and various obvious modifications and equivalent arrangements.

Claims

CLAIMSWHAT IS CLAIMED IS:
1. A method comprising: setting a first oversubscription factor of a control plane for an interface; measuring forwarding plane utilization on the interface; calculating a second oversubscription factor of the control plane for the interface using the measured forwarding plane utilization as compared with a target forwarding plane utilization on the interface; and determining whether to update the first oversubscription factor based upon the calculated second oversubscription factor.
2. A method of claim 1, wherein the first oversubscription factor is an initial oversubscription factor that is set based upon historical data of the control plane for the interface.
3. A method of claim 1, wherein the first oversubscription factor is not updated when an absolute value of a percentage change between the first oversubscription factor and the calculated second oversubscription factor is less than a predetermined percentage change value.
4. A method of claim 1, further comprising: updating the first oversubscription factor to a new oversubscription factor; and changing an advertised bandwidth of the control plane based upon the updating of the first oversubscription factor to the new oversubscription factor.
5. A method of claim 4, wherein the new oversubscription factor is equal to a predetermined minimum oversubscription factor when the second oversubscription factor is less than the predetermined minimum oversubscription factor.
6. A method of claim 4, wherein the new oversubscription factor is equal to a predetermined maximum oversubscription factor when the second oversubscription factor is greater than the predetermined maximum oversubscription factor.
7. A method of claim 4, wherein the new oversubscription factor is equal to an initial oversubscription factor that is set based upon historical data of the control plane for the interface when a signaled bandwidth of the control plane for the interface is less than a predetermined threshold bandwidth.
8. A method of claim 4, wherein the new oversubscription factor is equal to an initial oversubscription factor that is set based upon historical data of the control plane for the interface when a measured bandwidth of the forwarding plane is less than a predetermined threshold bandwidth.
9. A method of claim 4, wherein the new oversubscription factor is equal to a signaled bandwidth of the control plane for the interface divided by a bandwidth of the interface when the calculated second oversubscription factor is less than the signaled bandwidth of the control plane for the interface divided by the bandwidth of the interface.
10. A method of claim 1, further comprising: performing a plurality of measurements of forwarding plane utilization on the interface and calculating a plurality of second oversubscription factors of the control plane for the interface using respective measurements of forwarding plane utilization as compared with the target forwarding plane utilization on the interface, wherein the determination of whether to update the first oversubscription factor is based upon an average of the calculated plurality of second oversubscription factors.
11. A method of claim 10, wherein the determination of whether to update the first oversubscription factor is performed if a succession of consecutive calculated second oversubscription factors that are greater than the first oversubscription factor occur during an increase interval, and if a succession of consecutive calculated second oversubscription factors that are less than the first oversubscription factor occur during a decrease interval.
12. A method of claim 11, wherein the decrease interval is shorter than the increase interval.
13. An apparatus comprising: a control plane configured to set a first oversubscription factor for an interface; a forwarding plane configured to grant access to the interface from one or more routers via the control plane, wherein the control plane is configured to measure forwarding plane utilization on the interface, calculate a second oversubscription factor of the control plane for the interface using the measured forwarding plane utilization as compared with a target forwarding plane utilization on the interface, and determine whether to update the first oversubscription factor based upon the calculated second oversubscription factor.
14. A apparatus of claim 13, wherein the forwarding plane is further configured to grant access to the interface via one or more additional control planes.
15. A apparatus of claim 13, wherein the first oversubscription factor is an initial oversubscription factor that is set based upon historical data of the control plane for the interface.
16. A apparatus of claim 13, wherein the first oversubscription factor is not updated when an absolute value of a percentage change between the first oversubscription factor and the calculated second oversubscription factor is less than a predetermined percentage change value.
17. A apparatus of claim 13, wherein the control plane is configured to change an advertised bandwidth thereof based upon updating of the first oversubscription factor to a new oversubscription factor.
18. A apparatus of claim 13, wherein the control plane is further configured to perform a plurality of measurements of forwarding plane utilization on the interface and calculate a plurality of second oversubscription factors of the control plane for the interface using respective measurements of forwarding plane utilization as compared with the target forwarding plane utilization on the interface, and wherein the determination of whether to update the first oversubscription factor is based upon an average of the calculated plurality of second oversubscription factors.
19. A apparatus of claim 18, wherein the determination of whether to update the first oversubscription factor is performed if a succession of consecutive calculated second oversubscription factors that are greater than the first oversubscription factor occur during an increase interval, and if a succession of consecutive calculated second oversubscription factors that are less than the first oversubscription factor occur during a decrease interval.
20. A apparatus of claim 19, wherein the decrease interval is shorter than the increase interval.
21. A apparatus of claim 19, wherein the routers include a logical router.
PCT/US2009/062014 2008-10-29 2009-10-26 Method and apparatus for reflecting forwarding plane utilization in a control plane WO2010051242A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2009801435192A CN102203836B (en) 2008-10-29 2009-10-26 Method and apparatus for reflecting forwarding plane utilization in a control plane
EP09824045.0A EP2345016B1 (en) 2008-10-29 2009-10-26 Method and apparatus for reflecting forwarding plane utilization in a control plane

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/260,116 2008-10-29
US12/260,116 US7990856B2 (en) 2008-10-29 2008-10-29 Method and apparatus for reflecting forwarding plane utilization in control plane

Publications (1)

Publication Number Publication Date
WO2010051242A1 true WO2010051242A1 (en) 2010-05-06

Family

ID=42117396

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2009/062014 WO2010051242A1 (en) 2008-10-29 2009-10-26 Method and apparatus for reflecting forwarding plane utilization in a control plane

Country Status (4)

Country Link
US (2) US7990856B2 (en)
EP (1) EP2345016B1 (en)
CN (1) CN102203836B (en)
WO (1) WO2010051242A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016007473A1 (en) * 2014-07-09 2016-01-14 T-Mobile Usa, Inc. Cellular network backhaul oversubscription
US9615287B2 (en) 2014-12-18 2017-04-04 T-Mobile Usa, Inc. Dynamic bandwidth scheduling with transport network
US9749151B2 (en) 2014-12-18 2017-08-29 T-Mobile Usa, Inc. Tunneling with routing for transport network

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100561978C (en) * 2006-04-26 2009-11-18 华为技术有限公司 A kind of strategy route device and method
CN101656673A (en) * 2009-09-17 2010-02-24 华为技术有限公司 Pseudo line establishing method and node device
KR101304793B1 (en) * 2009-12-21 2013-09-05 한국전자통신연구원 Traffic engineering database control system and method for guarantee accuracy of traffic engineering database
US8902744B2 (en) * 2011-05-06 2014-12-02 Infinera Corporation Bandwidth advertisement model for shared mesh protection
US11558775B2 (en) * 2021-02-16 2023-01-17 Juniper Networks, Inc. Determining rate differential weighted fair output queue scheduling for a network device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7092356B2 (en) * 2001-10-05 2006-08-15 Nortel Networks Limited Resource management in heterogenous QoS-based packet Networks
US20080019375A1 (en) * 2004-08-24 2008-01-24 Joachim Charzinski Method and Device for Optimizing the Utilization of the Capacity of a Communication Network
US20080049614A1 (en) * 2006-08-23 2008-02-28 Peter John Briscoe Capacity Management for Data Networks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991268A (en) * 1997-07-07 1999-11-23 Nortel Networks Corporation Flow control mechanism of ABR traffic in ATM networks
US6920112B1 (en) * 1998-06-29 2005-07-19 Cisco Technology, Inc. Sampling packets for network monitoring
US6791941B1 (en) * 1999-09-28 2004-09-14 Lucent Technologies Inc. Learning-based admission control adjustment in data networks
US6697373B1 (en) * 2000-01-18 2004-02-24 Mark Henrik Sandstrom Automatic method for dynamically matching the capacities of connections in a SDH/SONET network combined with fair sharing of network resources
US7630358B1 (en) * 2001-07-09 2009-12-08 Sable Networks, Inc. Mechanism for implementing multiple logical routers within a single physical router
US7760643B2 (en) * 2007-04-09 2010-07-20 Telcordia Technologies, Inc. Automatic policy change management scheme for DiffServ-enabled MPLS networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7092356B2 (en) * 2001-10-05 2006-08-15 Nortel Networks Limited Resource management in heterogenous QoS-based packet Networks
US20080019375A1 (en) * 2004-08-24 2008-01-24 Joachim Charzinski Method and Device for Optimizing the Utilization of the Capacity of a Communication Network
US20080049614A1 (en) * 2006-08-23 2008-02-28 Peter John Briscoe Capacity Management for Data Networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2345016A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016007473A1 (en) * 2014-07-09 2016-01-14 T-Mobile Usa, Inc. Cellular network backhaul oversubscription
US9510232B2 (en) 2014-07-09 2016-11-29 T-Mobile Usa, Inc. Cellular network backhaul oversubscription
US9615287B2 (en) 2014-12-18 2017-04-04 T-Mobile Usa, Inc. Dynamic bandwidth scheduling with transport network
US9749151B2 (en) 2014-12-18 2017-08-29 T-Mobile Usa, Inc. Tunneling with routing for transport network

Also Published As

Publication number Publication date
EP2345016A4 (en) 2012-07-04
EP2345016A1 (en) 2011-07-20
US20100103815A1 (en) 2010-04-29
CN102203836A (en) 2011-09-28
US8509066B2 (en) 2013-08-13
CN102203836B (en) 2013-11-06
US20110255400A1 (en) 2011-10-20
EP2345016B1 (en) 2014-04-30
US7990856B2 (en) 2011-08-02

Similar Documents

Publication Publication Date Title
EP2327021B1 (en) Method and apparatus for link sharing among logical routers
US8509066B2 (en) Method and apparatus for reflecting forwarding plate utilization in control plane
US10397049B2 (en) Auto-provisioning edge devices in a communication network using control plane communications
US10250459B2 (en) Bandwidth on-demand services in multiple layer networks
EP2713567B1 (en) Maintaining load balancing after service application with a network device
US11438259B2 (en) Flexible algorithm aware border gateway protocol (BGP) prefix segment routing identifiers (SIDs)
US9071541B2 (en) Path weighted equal-cost multipath
US6665273B1 (en) Dynamically adjusting multiprotocol label switching (MPLS) traffic engineering tunnel bandwidth
US9059912B2 (en) Traffic policing for MPLS-based network
EP3764606A1 (en) Resilient multiprotocol label switching (mpls) rings using segment routing
EP3541028A1 (en) Adaptive load-balancing over a multi-point logical interface
JP2001197116A (en) Explicit route designating method and packet repeater for label switching system
US11765077B1 (en) Ping and traceroute in inter-autonomous system (AS) segment routing (SR) networks without requiring headend router or path monitoring system (PMS) controller knowledge of topology outside of origin AS
CN112868205B (en) Operation processing of multiprotocol packets
US12131185B2 (en) Sharing and oversubscription of general-purpose graphical processing units in data centers
US7742477B1 (en) Interconnectivity between autonomous systems
US12040982B2 (en) Systems and methods for optimal routing in sites with multiple routers for high availability wide area networks
US10587517B2 (en) Optimizing fabric path forwarding for virtual nodes within an electronic device
EP3491789A1 (en) Extending an mpls network using commodity network devices
WO2014149960A1 (en) System, method and apparatus for lsp setup using inter-domain abr indication
Bryant An introduction to packet switching for sync engineers
Zhang et al. Research on Probability with Different Routing Method in Optical Network
Neri Distributed architecture for resource reservation protocol traffic engineering (RSVP-TE)
Goswami Routing and IP
JP2000078144A (en) Trigger control method and edge device for shortcut

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980143519.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09824045

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2009824045

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE